2012-01-06 96 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)){ 
    // .... 
} 
相关问题