更新時(shí)間:2022-11-01 來(lái)源:黑馬程序員 瀏覽量:
雖然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ǔ)法格式如下:
for (容器中元素類(lèi)型 臨時(shí)變量:容器變量){ 執(zhí)行語(yǔ)句 }
從上面的格式可以看出,與for循環(huán)相比,foreach循環(huán)不需要獲得容器的長(zhǎng)度,也不需要根據(jù)索引訪問(wèn)容器中的元素,但它會(huì)自動(dòng)遍歷容器中的每個(gè)元素。下面通過(guò)一個(gè)案例演示foreach循環(huán)的用法,如文件6-5所示。
文件6-5 Example05.Java
import java.util.*; public class Example05 { public static void main (String[] args) { ArrayList list = new ArrayList (); // 創(chuàng)建ArrayList集合 list.add ("aaa") ; // 向ArrayList集合中添加字符串元素 list.add ("bbb") ; list.add ("ccc") ; for (Object obj : list) { // 使用foreach循環(huán)遍歷ArrayList對(duì)象 System.out.println (obj); // 取出并打印ArrayList集合中的元素 } } }
在文件6-5中,第4~7行代碼是聲明了一個(gè)ArrayList集合并向集合中添加了3個(gè)元素;第8行代碼使用foreach循環(huán)遍歷ArrayList集合并打印。可以看出,foreach循環(huán)在遍歷集合時(shí)語(yǔ)法非常簡(jiǎn)潔,沒(méi)有循環(huán)條件,也沒(méi)有迭代語(yǔ)句,所有這些工作都交給虛擬機(jī)去執(zhí)行了。foreach循環(huán)的次數(shù)是由容器中元素的個(gè)數(shù)來(lái)決定的,每次循環(huán)時(shí),foreach中都通過(guò)變量將當(dāng)前循環(huán)的元素記住,從而將集合中的元素分別打印出來(lái)。