日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁(yè)技術(shù)文章
文章詳情頁(yè)

帶你粗略了解Java數(shù)組的使用

瀏覽:84日期:2023-12-09 17:25:04
目錄數(shù)組的定義注意:數(shù)組的創(chuàng)建及初始化:1.數(shù)組的創(chuàng)建:2.數(shù)組的初始化①動(dòng)態(tài)初始化:②靜態(tài)初始化:注意事項(xiàng): 數(shù)組的使用1.數(shù)組的長(zhǎng)度:2.數(shù)組的訪問:3.數(shù)組的遍歷:4.使用數(shù)組交換兩個(gè)整數(shù)5.以字符串的形式輸出數(shù)組:理解引用類型:1.基本類型變量與引用類型變量的區(qū)別2.認(rèn)識(shí)null3.數(shù)組作為方法的返回值二維數(shù)組:1.創(chuàng)建二維數(shù)組及初始化:2.二維數(shù)組長(zhǎng)度:3.二維數(shù)組的打印:4.不規(guī)則的二維數(shù)組:Array類:總結(jié)數(shù)組的定義

數(shù)組:可以看作相同類型元素的一個(gè)集合,且在內(nèi)存中是一塊連續(xù)的內(nèi)存空間

注意:

C語(yǔ)言中,數(shù)組的內(nèi)存在棧上

在Java中,數(shù)組的內(nèi)存在堆上

數(shù)組的創(chuàng)建及初始化:1.數(shù)組的創(chuàng)建:

基本語(yǔ)法格式:

T[ ] 數(shù)組名 = new T[N];.① T,即Type,表示:數(shù)組中存放元素的類② T[ ], 表示:數(shù)組的類型③ N, 表示:數(shù)組的長(zhǎng)度

舉例:

創(chuàng)建一個(gè)可以容納10個(gè)int類型元素的數(shù)組int[] array1 = new int[10]; 創(chuàng)建一個(gè)可以容納5個(gè)double類型元素的數(shù)組double[] array2 = new double[5];2.數(shù)組的初始化

數(shù)組的初始化主要分為動(dòng)態(tài)初始化和靜態(tài)初始化

①動(dòng)態(tài)初始化:

基本語(yǔ)法格式:

int[ ] array = new int[10]在創(chuàng)建數(shù)組時(shí),直接指定數(shù)組中元素的個(gè)數(shù)

②靜態(tài)初始化:

基本語(yǔ)法格式:

int[ ] array1 = new int[ ] {0,1,2,3,4,5,6};double[ ] array2 = new double[ ]{1.0, 2.0, 3.0, 4.0,5.0};

注意事項(xiàng): 如果沒有對(duì)數(shù)組進(jìn)行初始化,數(shù)組中元素有其默認(rèn)值

如果數(shù)組中存儲(chǔ)元素類型為基類類型,默認(rèn)值為基類類型對(duì)應(yīng)的默認(rèn)值

如果數(shù)組中存儲(chǔ)元素類型為引用類型,默認(rèn)值為null

靜態(tài)初始化無(wú)需指定數(shù)組的長(zhǎng)度,編譯器在編譯時(shí)會(huì)根據(jù){ }中元素個(gè)數(shù)來(lái)確定數(shù)組的長(zhǎng)度 靜態(tài)初始化時(shí),{ }中數(shù)據(jù)類型必須與[ ]前數(shù)據(jù)類型一致、 靜態(tài)初始化可以簡(jiǎn)寫,省去后面的new T[ ] 如果不確定數(shù)組當(dāng)中內(nèi)容時(shí),使用動(dòng)態(tài)初始化,否則建議使用靜態(tài)態(tài)初始化數(shù)組的使用1.數(shù)組的長(zhǎng)度:

數(shù)組的長(zhǎng)度屬性: 每個(gè)數(shù)組都具有長(zhǎng)度,而且是固定的,Java中賦予了數(shù)組的一個(gè)屬性,可以獲取到數(shù)組的長(zhǎng)度,語(yǔ)句為:數(shù)組名.length

int[ ] array = new int[ ]{1,2,3,4,5,6};int len = array.length;此處的 length 是屬性

2.數(shù)組的訪問:

數(shù)組在內(nèi)存中是一段連續(xù)的空間,空間的編號(hào)都是從0開始的,依次遞增,該編號(hào)稱為數(shù)組的下標(biāo),數(shù)組可以通過下標(biāo)訪問其任意位置的元素

索引:每一個(gè)存儲(chǔ)到數(shù)組的元素,都會(huì)自動(dòng)的擁有一個(gè)編號(hào),從0開始,這個(gè)自動(dòng)編號(hào)稱為數(shù)組索引 (index),可以通過數(shù)組的索引訪問到數(shù)組中的元素由數(shù)組的長(zhǎng)度知,屬性 length 的執(zhí)行結(jié)果是數(shù)組的長(zhǎng)度,int類型結(jié)果,則數(shù)組的最大索引值為數(shù)組名.length-1

格式:數(shù)組名[索引]

數(shù)組名[索引] = 數(shù)值,為數(shù)組中的元素賦值變量 = 數(shù)組名[索引],獲取出數(shù)組中的元素

public static void main(String[] args) {//定義存儲(chǔ)int類型數(shù)組,賦值元素1,2,3,4,5 int[] arr = {1,2,3,4,5};//為0索引元素賦值為6 arr[0] = 6; //獲取數(shù)組0索引上的元素 int i = arr[0]; System.out.println(i); //直接輸出數(shù)組0索引元素 System.out.println(arr[0]); }

注意事項(xiàng):

數(shù)組是一段連續(xù)的內(nèi)容空間,因此支持隨機(jī)訪問,即通過下標(biāo)訪問快速訪問數(shù)組中任意位置的元素 下標(biāo)從0開始,介于[0, N) 之間不包含N,N為元素個(gè)數(shù),不能越界,否則會(huì)報(bào)出下標(biāo)越界異常3.數(shù)組的遍歷:

“遍歷”:是指將數(shù)組中的所有元素都訪問一遍

這里用打印的方式展示遍歷:

int[] array = new int[]{1,2,3,4,5,6};int len = array.length;for(int i=0;i<len;i++){System.out.println(array[i]);}

延申:

Java中的打印方式,出了上述的,還有foreach,即:for( 遍歷的數(shù)組內(nèi)容 :數(shù)組本身)

代碼如下:

for (int val:array) {System.out.println(val+' ');}

二者區(qū)別:

for循環(huán)遍歷打印數(shù)組,需要索引,而foreach不需要,若單純的想要遍歷數(shù)組,用foreach即可

4.使用數(shù)組交換兩個(gè)整數(shù)

//使用數(shù)組實(shí)現(xiàn)交換兩個(gè)整數(shù) public static void swap(int[] array){ int tmp = array[0]; array[0] = array[1]; array[1] = tmp; } public static void main(String[] args) {int[] array1 = {10,20};System.out.println('交換前:'+array1[0]+' '+array1[1]);swap(array1);System.out.println('交換后:'+array1[0]+' '+array1[1]); }

輸出結(jié)果:交換前:10 20交換后:20 10

交換原理:

帶你粗略了解Java數(shù)組的使用

5.以字符串的形式輸出數(shù)組:

使用方法toString 需要調(diào)用包 java.util.Arrays

int[] arr = {1,2,3,4,5,6};String ret = Arrays.toString(arr);System.out.println(ret);理解引用類型:1.基本類型變量與引用類型變量的區(qū)別

基本數(shù)據(jù)類型創(chuàng)建的變量,稱為基本變量,該變量空間中直接存放的是其所對(duì)應(yīng)的值;引用數(shù)據(jù)類型創(chuàng)建的變量,一般稱為對(duì)象的引用,其空間中存儲(chǔ)的是對(duì)象所在空間的地址

public static void func() { int a = 10; int b = 20; int[] arr = new int[]{1,2,3};}

在上述代碼中:a,b,arr,都是函數(shù)內(nèi)部的變量,因此其空間都在main方法對(duì)應(yīng)的棧幀中分配;

a、b是內(nèi)置類型的變量,因此其空間中保存的就是給該變量初始化的值。

array是數(shù)組類型的引用變量,因?yàn)槎紴橐闷鋬?nèi)部保存的是數(shù)組在堆空間中的首地址

帶你粗略了解Java數(shù)組的使用

引用變量并不直接存儲(chǔ)對(duì)象本身,而存儲(chǔ)的是對(duì)象在堆中空間的起始地址,通過該地址,引用變量便可以去操作對(duì)象。有點(diǎn)類似C語(yǔ)言中的指針,但是Java中引用要比指針的操作更簡(jiǎn)單

2.認(rèn)識(shí)null

null 在 Java 中表示 “空引用”,也就是一個(gè)不指向?qū)ο蟮囊茫矗嚎諏?duì)象

int[ ] arr = null; //arr引用的是一個(gè)空對(duì)象System.out.println(arr[0]);此處不能訪問0下標(biāo),因?yàn)闆]有所指對(duì)象

null 的作用類似于 C 語(yǔ)言中的 NULL (空指針), 都是表示一個(gè)無(wú)效的內(nèi)存位置,因此不能對(duì)這個(gè)內(nèi)存進(jìn)行任何讀寫操作,Java 中并沒有約定 null 和 0 號(hào)地址的內(nèi)存有任何關(guān)聯(lián)

3.數(shù)組作為方法的返回值

將一個(gè)數(shù)組內(nèi)容擴(kuò)大二倍:

public static int[] fun(int[] array){int[] tmp = new int[array.length];for (int i = 0; i <array.length; i++) { tmp[i] = array[i] * 2;}return tmp;}public static void main(String[] args) {int[] array = {1,2,3,4,5,6,7,8};int[] ret = fun(array);System.out.println(Arrays.toString(ret));}二維數(shù)組:

二維數(shù)組本質(zhì)上也就是一維數(shù)組, 只不過每個(gè)元素又是一個(gè)一維數(shù)組

即:數(shù)組的數(shù)組就是一個(gè)二維數(shù)組

語(yǔ)法格式:數(shù)據(jù)類型[ ][ ] 數(shù)組名稱 = new 數(shù)據(jù)類型 [行數(shù)][列數(shù)] { 初始化數(shù)據(jù) };

帶你粗略了解Java數(shù)組的使用

1.創(chuàng)建二維數(shù)組及初始化:

int[][] array1 = new int[10][10];int array2[][] = new int[10][10];int array3[][] = { { 1, 1, 1 }, { 2, 2, 2 } };int array4[][] = new int[][] { { 1, 1, 1 }, { 2, 2, 2 } };2.二維數(shù)組長(zhǎng)度:

// 獲取二維數(shù)組的第一維長(zhǎng)度(3)int len1 = array.length;// 獲取二維數(shù)組的第一維的第一個(gè)數(shù)組長(zhǎng)度(1)int len2 = array[0].length;

進(jìn)行開發(fā)之中,出現(xiàn)二位數(shù)組的幾率并不高

3.二維數(shù)組的打印: 方法① foreach

int[][] array = { {1,2,3}, {4,5,6} };for (int[] tmp : array) {for (int x: tmp) {System.out.print(x+' ');}System.out.println();} 方法② for循環(huán)

for (int i = 0; i < array.length; i++) {for (int j = 0; j < array[i].length; j++) {System.out.print(array[i][j]+' ');}System.out.println();}

打印結(jié)果:

帶你粗略了解Java數(shù)組的使用

方法③ deeptoString

int[][] array = {{1, 2, 3}, {4, 5, 6}};System.out.println(Arrays.deepToString(array));

打印結(jié)果:

帶你粗略了解Java數(shù)組的使用

4.不規(guī)則的二維數(shù)組:

int[ ][ ] array = new int[2][ ];

注意:C語(yǔ)言中是可以指定列,行可自行推導(dǎo);Java中,行必須指定,列是不可以自動(dòng)推導(dǎo)的

此時(shí)若用上述 for 循環(huán)來(lái)打印數(shù)組,便會(huì)出現(xiàn)異常:

帶你粗略了解Java數(shù)組的使用

分析如下:

帶你粗略了解Java數(shù)組的使用

Array類:

java.util.Arrays 類提供的所有方法都是靜態(tài)的,能方便地操作數(shù)組,

由于數(shù)組對(duì)象本身并沒有什么方法可以供我們調(diào)用,但API中提供了一個(gè)工具類Arrays供我們使用,從而可以對(duì)數(shù)據(jù)對(duì)象進(jìn)行一些基本的操作。

Arrays類中的方法都是static修飾的靜態(tài)方法,在使用的時(shí)候可以直接使用類名進(jìn)行調(diào)用,而'不用'使用對(duì)象來(lái)調(diào)用 (注意:是'不用'而不是'不能')

Array具有的功能這里就不一一列舉了,可以去JDK幫助文檔自行了解

總結(jié)

本篇文章就到這里了,希望能給你帶來(lái)幫助,也希望您能夠多多關(guān)注好吧啦網(wǎng)的更多內(nèi)容!

標(biāo)簽: Java
相關(guān)文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
久久精品99国产国产精| 国产一精品一av一免费爽爽| 水蜜桃精品av一区二区| 嫩草伊人久久精品少妇av杨幂 | 亚洲欧美久久精品| 超级白嫩亚洲国产第一| 美女国产一区二区三区| 亚洲资源网站| 国产精品99在线观看| 亚洲精品三级| 九九九精品视频| 亚洲综合日韩| 麻豆精品网站| 亚洲精一区二区三区| 精品福利久久久| 首页国产精品| 久久天堂av| 蜜桃久久精品一区二区| 日韩午夜黄色| 久久在线91| 欧美精品一线| 日韩国产欧美| 国产精品一区二区三区www| 欧美+亚洲+精品+三区| 国产精品日本一区二区三区在线| 久久精品国产成人一区二区三区| 日韩综合在线| 精品国产亚洲一区二区三区大结局| 99精品美女| 国产精品免费不| 日本一区二区免费高清| 日韩精品诱惑一区?区三区| 亚洲天堂一区二区| 性色av一区二区怡红| 国产精品日韩精品在线播放| 精品三级在线| 日韩欧美另类一区二区| 日本亚州欧洲精品不卡| 日韩在线一区二区| 国产精品女主播一区二区三区| 性欧美69xoxoxoxo| 日本免费新一区视频| 久久久久国产精品一区三寸| 久久国产精品99国产| 麻豆极品一区二区三区| 吉吉日韩欧美| 亚洲制服少妇| 麻豆精品视频在线观看免费| 一区在线免费观看| 亚洲欧美日韩在线观看a三区| 日韩**一区毛片| 免费成人性网站| 国产精品videossex| 欧美特黄一区| 国产日韩欧美| 久久国产精品亚洲77777| 免费看久久久| 国产精品日韩精品在线播放| 蜜桃久久久久久久| 亚洲高清成人| 国产一区观看| 精品少妇一区| 日韩和欧美的一区| 丝袜美腿亚洲色图| 午夜欧美理论片| 精品国产aⅴ| 91看片一区| 国产精品13p| 久久精品国产99国产精品| 韩国女主播一区二区三区| 亚洲制服一区| 亚洲毛片在线| 欧美日韩网址| 精品网站aaa| 野花国产精品入口| 99久久精品费精品国产| 91欧美日韩| 久久久亚洲一区| 石原莉奈在线亚洲三区| 国产亚洲精品久久久久婷婷瑜伽| 国产精品社区| 亚洲手机视频| 五月天激情综合网| 视频一区二区三区中文字幕| 亚洲欧洲国产精品一区| 美女视频网站久久| 久久中文字幕一区二区三区| 国产亚洲激情| 久久爱www成人| 亚洲图片久久| 91综合视频| 欧美日本精品| 国产一区二区三区亚洲| 日韩影院精彩在线| 亚洲精品一级二级三级| 久久精品一区二区国产| 国产欧美二区| 一区二区国产在线| 国产精品片aa在线观看| 美腿丝袜在线亚洲一区| 日韩超碰人人爽人人做人人添| 水野朝阳av一区二区三区| 蜜臀精品久久久久久蜜臀 | 日韩欧美另类一区二区| 欧美大黑bbbbbbbbb在线| 日本成人在线不卡视频| 欧美激情福利| 高清一区二区三区av| 日韩午夜在线| 欧美久久天堂| 国产高清一区二区| 国产女人18毛片水真多18精品| 韩日一区二区| 99香蕉国产精品偷在线观看| 精品久久久网| 爽爽淫人综合网网站| 91精品久久久久久久久久不卡| 国产精品xvideos88| 99国产精品99久久久久久粉嫩| 日韩a一区二区| 亚洲精品一区二区在线播放∴| 91精品国产自产在线观看永久∴ | 国产精品视频一区二区三区| 日本欧美在线看| 久久成人一区| 国产精品一区二区美女视频免费看 | 国产精品美女久久久| 91亚洲国产高清| 国产美女精品视频免费播放软件| 日韩精选在线| 欧美精品福利| 麻豆久久久久久| 五月亚洲婷婷 | 99久久久久| 亚洲一区二区小说| 麻豆网站免费在线观看| 国产精品二区不卡| 色爱综合网欧美| 久久99精品久久久久久园产越南| 婷婷精品在线| 欧美专区一区| 亚洲一区二区网站| 激情欧美国产欧美| 尹人成人综合网| 亚洲v天堂v手机在线| 成人在线视频区| 日韩欧美一区二区三区免费看| 国产成人久久精品一区二区三区| 欧美一区91| 精品五月天堂| 国产成人精品999在线观看| 亚洲欧美日韩视频二区| 亚洲欧美日韩专区| 日日夜夜免费精品视频| 久久影视三级福利片| 美腿丝袜亚洲三区| 亚洲欧美日韩在线观看a三区| 国产亚洲一区二区手机在线观看| 亚洲精品123区| 日韩在线一二三区| 精品亚洲自拍| 国产精品试看| 精品视频亚洲| 999在线观看精品免费不卡网站| 亚洲深深色噜噜狠狠爱网站| 久久国产视频网| 最新中文字幕在线播放| 最新国产精品久久久| 久久精品国内一区二区三区水蜜桃| 99视频精品视频高清免费| 欧美日韩夜夜| 久久亚洲一区| 国产欧美日韩一区二区三区在线| 国产精品伦理久久久久久| 免费日韩av片| 黄毛片在线观看| 欧美日韩亚洲三区| 亚洲丝袜啪啪| 亚洲一区二区免费看| 日本免费在线视频不卡一不卡二| 国产成人久久精品一区二区三区| 国产精品久久久久蜜臀| 久久亚洲黄色| 久久高清一区| 欧美国产先锋| 免费人成网站在线观看欧美高清| 欧美日韩在线精品一区二区三区激情综合| 亚洲一区二区三区无吗| 国产99在线| 九九精品调教| 亚洲经典在线| 精品国模一区二区三区| 欧美极品中文字幕| 国产精品极品| 欧美成a人片免费观看久久五月天| 日韩精品免费观看视频| 国产免费播放一区二区| 欧美激情久久久久久久久久久| 一区二区三区网站| 日韩精彩视频在线观看|