java程序中foreach用法示例
語法
for (Object objectname : preArrayList(一個Object對象的列表)) {}
示例
package com.kuaff.jdk5;
import java.util.*;
import java.util.Collection;
public class Foreach
{
private Collection c = null;
private String[] belle = new String[4];
public Foreach()
{
belle[0] = "西施";
belle[1] = "王昭君";
belle[2] = "貂禪";
belle[3] = "楊貴妃";
c = Arrays.asList(belle);
}
public void testCollection()
{
for (String b : c)
{
System.out.println("曾經(jīng)的風化絕代:" + b);
}
}
public void testArray()
{
for (String b : belle)
{
System.out.println("曾經(jīng)的青史留名:" + b);
}
}
public static void main(String[] args)
{
Foreach each = new Foreach();
each.testCollection();
each.testArray();
}
}
對于集合類型和數(shù)組類型的,我們都可以通過foreach語法來訪問它。上面的例子中,以前我們要依次訪問數(shù)組,挺麻煩:
for (int i = 0; i < belle.length; i++)
{
String b = belle[i];
System.out.println("曾經(jīng)的風化絕代:" + b);
}
現(xiàn)在只需下面簡單的語句即可:
for (String b : belle)
{
System.out.println("曾經(jīng)的青史留名:" + b);
}
對集合的訪問效果更明顯。以前我們訪問集合的代碼:
for (Iterator it = c.iterator(); it.hasNext();)
{
String name = (String) it.next();
System.out.println("曾經(jīng)的風化絕代:" + name);
}
現(xiàn)在我們只需下面的語句:
for (String b : c)
{
System.out.println("曾經(jīng)的風化絕代:" + b);
}
Foreach也不是萬能的,它也有以下的缺點:
在以前的代碼中,我們可以通過Iterator執(zhí)行remove操作。
for (Iterator it = c.iterator(); it.hasNext();)
{
itremove()
}
但是,在現(xiàn)在的foreach版中,我們無法刪除集合包含的對象。你也不能替換對象。
同時,你也不能并行的foreach多個集合。所以,在我們編寫代碼時,還得看情況而使用它。
相關文章
關于json序列化(javaBean轉Json的細節(jié)處理)
這篇文章主要介紹了關于json序列化(javaBean轉Json的細節(jié)處理),具有很好的參考價值,希望對大家有所幫助。2022-03-03Spring BPP中如何優(yōu)雅的創(chuàng)建動態(tài)代理Bean詳解
這篇文章主要給大家介紹了關于Spring BPP中如何優(yōu)雅的創(chuàng)建動態(tài)代理Bean的相關資料,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面來一起學習學習吧2019-03-03Java 動態(tài)模擬操作系統(tǒng)進程調(diào)度算法
這篇文章主要介紹了采用java語言編程模擬N個進程采用動態(tài)高優(yōu)先權優(yōu)先進程調(diào)度算法。文中代碼具有一定的學習價值,感興趣的小伙伴可以了解一下2021-12-12SpringBoot整合RocketMQ實現(xiàn)消息發(fā)送和接收的詳細步驟
這篇文章主要介紹了SpringBoot整合RocketMQ實現(xiàn)消息發(fā)送和接收功能,我們使用主流的SpringBoot框架整合RocketMQ來講解,使用方便快捷,本文分步驟給大家介紹的非常詳細,需要的朋友可以參考下2021-08-08