日常學(xué)習(xí) 7.31 數(shù)組的遍歷
7.31
java數(shù)組
一、基本概念
#一組數(shù)據(jù),使用有序的方式對(duì)數(shù)據(jù)進(jìn)行儲(chǔ)存的一種結(jié)構(gòu)
二、數(shù)組中的名字與屬性
#數(shù)組的元素
#數(shù)組的 索引/下標(biāo)/角標(biāo) ,每個(gè)元素的 標(biāo)識(shí)/門牌號(hào)
#數(shù)組可以根據(jù)下標(biāo)獲取元素, 數(shù)組名[下標(biāo)]
#數(shù)組的長(zhǎng)度,元素的個(gè)數(shù),數(shù)組名.length
三、數(shù)組的特性
#長(zhǎng)度是固定的,不可變
#所有的數(shù)據(jù)類型都能定義自己的數(shù)組
#同一個(gè)數(shù)組,數(shù)據(jù)類型必須一致
四、創(chuàng)建數(shù)組(一維)
#靜態(tài) 創(chuàng)建/初始化
1.完整寫法
數(shù)據(jù)類型[] 數(shù)組名(變量名) = new 數(shù)據(jù)類型[]{數(shù)據(jù)1,數(shù)據(jù)2,數(shù)據(jù)3,數(shù)據(jù)n};
2.簡(jiǎn)約寫法
數(shù)據(jù)類型[] 數(shù)組名(變量名) = {數(shù)據(jù)1,數(shù)據(jù)2,數(shù)據(jù)3,數(shù)據(jù)n};
#動(dòng)態(tài)創(chuàng)建/初始化
不給定數(shù)據(jù),但要已知長(zhǎng)度
寫法
數(shù)據(jù)類型[] 數(shù)組名(變量名) = new 數(shù)據(jù)類型[長(zhǎng)度];
未輸入時(shí),虛擬機(jī)會(huì)給默認(rèn)值
int[] 與整數(shù)類型的數(shù)組 :0
double[] 浮點(diǎn)型 :0.0
char[]字符數(shù)組 :0/空字符
boolean[] 布爾數(shù)組 :false
String[] 引用數(shù)據(jù)類型數(shù)組 :null
五、數(shù)組(對(duì)象)的名字
如:[I@15db9742
@代表分隔符
左邊的[I 表示對(duì)象是int一維數(shù)組類型 ([[I表示int二維數(shù)組類型)
右邊的15db9742 是一個(gè)十六進(jìn)制的內(nèi)存地址
進(jìn)制的基礎(chǔ)常識(shí):十進(jìn)制,沒(méi)有十 0~9 10
二進(jìn)制,沒(méi)有二 0,1 10
十六進(jìn)制沒(méi)有十六 0~9,a,b,c,d,e,f 10
六、數(shù)組一定會(huì)遇到的bug
ArrayIndexOutOfBoundsException
數(shù)組 下標(biāo) 超出 邊界 異常 = 數(shù)組越界
七、數(shù)組中的思想
1.累加的思想
在 遍歷數(shù)組 外定義一個(gè)"和"
在 遍歷數(shù)組 過(guò)程中進(jìn)行累加
在 遍歷數(shù)組 結(jié)束后得到“和”的結(jié)果
2.統(tǒng)計(jì)的思想
在 遍歷數(shù)組 過(guò)程中,滿足條件,計(jì)數(shù)一下
在 遍歷數(shù)組 過(guò)程中,還可以判斷當(dāng)前計(jì)數(shù)器
在 遍歷數(shù)組 結(jié)束后,展示計(jì)數(shù)結(jié)果
3.求最值的思想
在 遍歷數(shù)組 外定義一個(gè)參照物 變量名
在 遍歷數(shù)組 過(guò)程中和每一個(gè)元素比對(duì),如果更大
就賦值給變量
八、數(shù)組的修改
1.元素的修改
數(shù)組名[下標(biāo)] = 新值
2.地址的修改
int[] array = {1,2,3,4,5};
array = new int[3];
int[] arr = new int[5];
array = arr;
3.數(shù)組的拷貝
#淺拷貝
賦值內(nèi)存地址(本質(zhì)上還是同一個(gè)對(duì)象)
#深拷貝
將某個(gè)數(shù)組(對(duì)象)中每一個(gè)元素,一個(gè)一個(gè)的 賦值 給目標(biāo)數(shù)組的對(duì)應(yīng)位置
本質(zhì)上為兩個(gè)對(duì)象,互不影響
支線任務(wù):
1.靜態(tài)創(chuàng)建和動(dòng)態(tài)創(chuàng)建分別適合什么場(chǎng)景

2.數(shù)組的選擇排序和冒泡排序
1.

2.

心得:數(shù)組遍歷和循環(huán)單個(gè)使用還好,一旦混合使用或者嵌套就很考驗(yàn)邏輯思維能力,一定要能理清關(guān)系,實(shí)在不行可以畫(huà)流程圖進(jìn)行輔助。