淺析java的foreach循環(huán)
使用foreach循環(huán)遍歷數(shù)組和集合時(shí),無需獲得數(shù)組和集合的長(zhǎng)度,無須根據(jù)索引來訪問數(shù)組元素和集合元素,foreach循環(huán)自動(dòng)遍歷數(shù)組和集合的每一個(gè)元素。
foreach的語(yǔ)句格式:
for(type variableName : array|connection){
//variable自動(dòng)迭代訪問每一個(gè)元素
}
例子:
public class ForEachTest
{
public static void main(String[] args)
{
String[] books = {"java","c","c++","c#","asp"};
for(String book : books)
{
System.out.println(book);
}
}
}
輸出:
java
c
c++
c#
asp
public class ForEachTest
{
public static void main(String[] args)
{
String[] books = {"java","c","c++","c#","asp"};
for(String book : books)
{
book = "hello world!";
System.out.println(book);
}
System.out.println(books[0]);
}
}
輸出:
hello world!
hello world!
hello world!
hello world!
hello world!
java
所以foreach這種循環(huán)一般只適合做數(shù)組的遍歷,提取數(shù)據(jù)顯示等,不適合用于增加刪除和使用下標(biāo)等復(fù)雜的操作。
foreach語(yǔ)句是for語(yǔ)句特殊情況下的增強(qiáng)版本,簡(jiǎn)化了編程,提高了代碼的可讀性和安全性(不用怕數(shù)組越界)。相對(duì)老的for語(yǔ)句來說是個(gè)很好的補(bǔ)充。
提倡能用foreach的地方就不要再用for了。在用到對(duì)集合或者數(shù)組索引的情況下,foreach顯得力不從心,這個(gè)時(shí)候是用for語(yǔ)句的時(shí)候了。foreach一般結(jié)合泛型使用
相關(guān)文章
Java后端向前端返回文件流實(shí)現(xiàn)下載功能的方法
這篇文章主要給大家介紹了關(guān)于Java后端向前端返回文件流實(shí)現(xiàn)下載功能的相關(guān)資料,Java后端可以通過調(diào)用接口返回文件流來實(shí)現(xiàn)文件傳輸功能,文中通過代碼介紹的非常詳細(xì),需要的朋友可以參考下2023-10-10Java基于rest assured實(shí)現(xiàn)接口測(cè)試過程解析
這篇文章主要介紹了Java基于rest assured實(shí)現(xiàn)接口測(cè)試過程解析,文中通過示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友可以參考下2020-03-03SpringBoot Data JPA 關(guān)聯(lián)表查詢的方法
這篇文章主要介紹了SpringBoot Data JPA 關(guān)聯(lián)表查詢的方法,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-07-07IDEA設(shè)置Maven自動(dòng)編譯model的實(shí)現(xiàn)方法
本文主要介紹了IDEA設(shè)置Maven自動(dòng)編譯model的實(shí)現(xiàn)方法, maven結(jié)構(gòu)的項(xiàng)目,我們?cè)诿看涡薷拇a后都會(huì)需要手動(dòng)編譯,本文就可以解決這個(gè)問題,感興趣的可以了解一下2023-08-08Mybatis?Plus插入數(shù)據(jù)后獲取新數(shù)據(jù)id值的踩坑記錄
在某些情況下,需要在執(zhí)行新增后,需要獲取到新增行的id,這篇文章主要給大家介紹了關(guān)于Mybatis?Plus插入數(shù)據(jù)后獲取新數(shù)據(jù)id值的相關(guān)資料,文中通過實(shí)例代碼介紹的非常詳細(xì),需要的朋友可以參考下2022-08-08SpringMVC中Json數(shù)據(jù)格式轉(zhuǎn)換
本文主要介紹了SpringMVC中Json數(shù)據(jù)格式轉(zhuǎn)換的相關(guān)知識(shí)。具有很好的參考價(jià)值。下面跟著小編一起來看下吧2017-03-03詳解SpringBoot 解決攔截器注入Service為空問題
這篇文章主要介紹了詳解SpringBoot 解決攔截器注入Service為空問題的解決,小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過來看看吧2018-06-06