我試驗(yàn)了 把 array[i]) 放在第二層循環(huán)里面輸出,結(jié)果是12個數(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
展開
|
![]() |
蘇格蘭式炸彈
展開
|
![]() ![]() 學(xué)習(xí)達(dá)人
|
我是夕景
展開
不懂為啥j<array[i] j不是代表所有的字母嗎? ![]() 凌空系
展開
@ 我是夕景 修改:for里嵌套for來遍歷array[i]這個數(shù)據(jù),j代表該數(shù)組的下標(biāo)。所以j要小于array[i]數(shù)組的下標(biāo)長度,即j<array[i].length |
![]() ![]() 打卡Lv2
|
cloud7777777
展開
老師您好!請問:嵌套數(shù)組 是不能用 for-each 循環(huán) 遍歷出來的嗎?謝謝! ![]() 凌空系
展開
@ cloud7777777 注意“String x:array[i]”,老師說過二維數(shù)組本質(zhì)上還是一個一維數(shù)組,只是數(shù)組的元素不是單個數(shù)據(jù),而是數(shù)組的形式。我認(rèn)為還有另外一層意思,即是多個數(shù)組的集合,如這里的array,是四個數(shù)組的集合,所以for-each遍歷時(shí),用array[i]而不用array,array是一個集合,而for-each是單個數(shù)組的遍歷,這也是前條評論提到的直接用for-each遍歷會出錯的原因。i循環(huán),且i<array.length,也是(i<4),最終意思是循環(huán)遍歷i=0 到i=4的array的數(shù)組。 ![]() 凌空系
展開
@ cloud7777777 看到你的問題,我特意去試了下,答案是可以的。
首先,不能直接用for-each,會提示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)保留或刪除有爭議評論。
參與本評論即表明您已經(jīng)閱讀并接受
上述條款。