2022-12-15
循環(huán) foreach strs 元素
foreach循環(huán)介紹
雖然Iterator可以用來(lái)遍歷集合中的元素,但寫(xiě)法上比較繁瑣,為了簡(jiǎn)化書(shū)寫(xiě),從JDK5開(kāi)始,提供了foreach循環(huán)。foreach循環(huán)是一種更加簡(jiǎn)潔的for循環(huán),也稱增強(qiáng)for循環(huán)。foreach循環(huán)用于遍歷數(shù)組或集合中的元素,具體語(yǔ)法格式如下:
Java |
從上面的格式可以看出,與for循環(huán)相比,foreach循環(huán)不需要獲得容器的長(zhǎng)度,也不需要根據(jù)索引訪問(wèn)容器中的元素,但它會(huì)自動(dòng)遍歷容器中的每個(gè)元素。接下來(lái)通過(guò)一個(gè)案例演示foreach循環(huán)的用法。
Java |
可以看出,foreach循環(huán)在遍歷集合時(shí)語(yǔ)法非常簡(jiǎn)潔,沒(méi)有循環(huán)條件,也沒(méi)有迭代語(yǔ)句,所有這些工作都交給虛擬機(jī)去執(zhí)行了。foreach循環(huán)的次數(shù)是由容器中元素的個(gè)數(shù)決定的,每次循環(huán)時(shí),foreach中都通過(guò)變量將當(dāng)前循環(huán)的元素記住,從而將集合中的元素分別打印出來(lái)。
foreach循環(huán)的局限性
foreach循環(huán)雖然書(shū)寫(xiě)起來(lái)很簡(jiǎn)潔,但在使用時(shí)也存在一定的局限性。當(dāng)使用foreach循環(huán)遍歷集合和數(shù)組時(shí),只能訪問(wèn)集合中的元素,不能對(duì)其中的元素進(jìn)行修改。接下來(lái)以一個(gè)String類型的數(shù)組為例演示foreach循環(huán)的缺陷。
Java |
案例中分別使用foreach循環(huán)和普通for循環(huán)去修改數(shù)組中的元素。從運(yùn)行結(jié)果可以看出,foreach循環(huán)并不能修改數(shù)組中元素的值,原因是str="ddd"只是臨時(shí)變量,str指向了一個(gè)新的字符串,這與數(shù)組中的元素沒(méi)有一點(diǎn)關(guān)系。而在普通for循環(huán)中,是可以通過(guò)索引的方式來(lái)引用數(shù)組中的元素并對(duì)其值進(jìn)行修改的。
開(kāi)班時(shí)間:2021-04-12(深圳)
開(kāi)班盛況開(kāi)班時(shí)間:2021-05-17(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-03-22(杭州)
開(kāi)班盛況開(kāi)班時(shí)間:2021-04-26(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-05-10(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-02-22(北京)
開(kāi)班盛況開(kāi)班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開(kāi)班時(shí)間:2020-09-21(上海)
開(kāi)班盛況開(kāi)班時(shí)間:2021-07-12(北京)
預(yù)約報(bào)名開(kāi)班時(shí)間:2019-07-22(北京)
開(kāi)班盛況Copyright 2011-2023 北京千鋒互聯(lián)科技有限公司 .All Right 京ICP備12003911號(hào)-5 京公網(wǎng)安備 11010802035720號(hào)