我試驗(yàn)了 把 array[i]) 放在第二層循環(huán)里面輸出,結(jié)果是12個(gè)數(shù)組元素的內(nèi)存,所以老師的代碼 for(int j=0;j<array[i].length;j++) 成立
第二層循環(huán):
for(int i=0;i<array.length;i++) {
for(int j=0;j<array[i].length;j++) {
System.out.println(array[i]);
打卡Lv4
|
天空2019
展開
|
蘇格蘭式炸彈
展開
|
|
我是夕景
展開
不懂為啥j<array[i] j不是代表所有的字母嗎? 凌空系
展開
@ 我是夕景 修改:for里嵌套for來遍歷array[i]這個(gè)數(shù)據(jù),j代表該數(shù)組的下標(biāo)。所以j要小于array[i]數(shù)組的下標(biāo)長(zhǎng)度,即j<array[i].length |
|
打卡Lv2
|
cloud7777777
展開
老師您好!請(qǐng)問:嵌套數(shù)組 是不能用 for-each 循環(huán) 遍歷出來的嗎?謝謝。 凌空系
展開
@ cloud7777777 注意“String x:array[i]”,老師說過二維數(shù)組本質(zhì)上還是一個(gè)一維數(shù)組,只是數(shù)組的元素不是單個(gè)數(shù)據(jù),而是數(shù)組的形式。我認(rèn)為還有另外一層意思,即是多個(gè)數(shù)組的集合,如這里的array,是四個(gè)數(shù)組的集合,所以for-each遍歷時(shí),用array[i]而不用array,array是一個(gè)集合,而for-each是單個(gè)數(shù)組的遍歷,這也是前條評(píng)論提到的直接用for-each遍歷會(huì)出錯(cuò)的原因。i循環(huán),且i<array.length,也是(i<4),最終意思是循環(huán)遍歷i=0 到i=4的array的數(shù)組。 凌空系
展開
@ cloud7777777 看到你的問題,我特意去試了下,答案是可以的。
首先,不能直接用for-each,會(huì)提示String數(shù)據(jù)類型無法轉(zhuǎn)變?yōu)镾tring。
后來我在for里面用for-each遍歷成功了。見如下代碼:
//用for-each遍歷二維數(shù)組
String[][] array= {{"a","b","c","d",},{"e","f","g","h","i",},{"j","k","l","m",},
{"o","p","q","r"}};
for(int i=0;i<array.length;i++) {
for(String x:array[i]) {
System.out.println(x);
}
} |
承擔(dān)因您的行為而導(dǎo)致的法律責(zé)任,
本站有權(quán)保留或刪除有爭(zhēng)議評(píng)論。
參與本評(píng)論即表明您已經(jīng)閱讀并接受
上述條款。