2012-01-06 53 views
0

我可以使用Python的for循環遍歷數組作爲Java中是否有FOR ... IN ...循環與Python類似?

arr = [] 
for e in arr: 
    do smth. with each element 

請問Java有相似的循環?如果我會分裂這樣Java中的字符串:

temp = str.split(delimiter); 

請問我有陣列可與「爲... ...中的」類似的語句來循環?

+3

你有試過什麼嗎?或許閱讀任何幫助?在我最喜歡的搜索引擎中搜索2秒鐘後發現http://docs.oracle.com/javase/1.5.0/docs/guide/language/foreach.html – ManseUK 2012-01-06 11:34:47

+0

http://docs.oracle.com/javase/tutorial/java /nutsandbolts/for.html – 2012-01-06 11:38:56

回答

9

還有就是foreach「聲明」:

for (final E element: array) { 
    // do whatever with element 
} 

它與數組和各種收藏以及(集合,列表,地圖),一般用於任何X類,它實現Iterable<X>,即Iterable本身(這意味着你可以寫一個類在foreach語句中使用,這很好)。

所以,你可以直接寫:

for (final String s: str.split(delimiter)) { 
    // work with s 
} 

.split()返回一個數組,這與foreach語句直接可用。也就是說,如果你不需要另一個變量來保存數組索引,無論出於何種原因。

+2

+1爲'final'。 – Thilo 2012-01-06 11:37:16

+1

我爲什麼要用final? – 2012-01-06 11:38:25

+2

「應該」太強大了 - 但無論如何,在這裏,「final」將避免你意外地在循環中重複使用s(如果你嘗試,這將是一個編譯錯誤)。 – fge 2012-01-06 11:39:44

2
for (String part: str.split(delimiter)){ 
    // .... 
} 
相關問題