java程序中foreach用法示例
語法
for (Object objectname : preArrayList(一個(gè)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)的風(fē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)的風(fē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)的風(fēng)化絕代:" + name);
}
現(xiàn)在我們只需下面的語句:
for (String b : c)
{
System.out.println("曾經(jīng)的風(fēng)化絕代:" + b);
}
Foreach也不是萬能的,它也有以下的缺點(diǎn):
在以前的代碼中,我們可以通過Iterator執(zhí)行remove操作。
for (Iterator it = c.iterator(); it.hasNext();)
{
itremove()
}
但是,在現(xiàn)在的foreach版中,我們無法刪除集合包含的對象。你也不能替換對象。
同時(shí),你也不能并行的foreach多個(gè)集合。所以,在我們編寫代碼時(shí),還得看情況而使用它。
相關(guān)文章
spring boot使用thymeleaf為模板的基本步驟介紹
Spring Boot項(xiàng)目的默認(rèn)模板引擎是Thymeleaf,這沒什么好說的,個(gè)人覺得也非常好,下面這篇文章主要給大家介紹了關(guān)于spring boot使用thymeleaf為模板的相關(guān)資料,需要的朋友可以參考借鑒,下面來一起學(xué)習(xí)學(xué)習(xí)吧。2018-01-01
SpringBoot中@ConditionalOnBean實(shí)現(xiàn)原理解讀
這篇文章主要介紹了SpringBoot中@ConditionalOnBean實(shí)現(xiàn)原理,具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-02-02
Spring注解@Resource和@Autowired區(qū)別對比詳解
這篇文章主要介紹了Spring注解@Resource和@Autowired區(qū)別對比詳解,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2019-09-09
利用MyBatis實(shí)現(xiàn)條件查詢的方法匯總
這篇文章主要給大家介紹了關(guān)于利用MyBatis實(shí)現(xiàn)條件查詢的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者使用MyBatis具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面來一起學(xué)習(xí)學(xué)習(xí)吧2020-08-08
MyBatis XML去除多余AND|OR前綴或逗號等后綴的操作
這篇文章主要介紹了MyBatis XML去除多余AND|OR前綴或逗號等后綴的操作,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2021-02-02
springboot配置文件中使用${}注入值的兩種方式小結(jié)
這篇文章主要介紹了springboot配置文件中使用${}注入值的兩種方式小結(jié),具有很好的參考價(jià)值,希望對大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2022-03-03

