問題描述
在 Python 中,enumerate
函數允許您可以迭代一系列 (index, value) 對.例如:
In Python, the enumerate
function allows you to iterate over a sequence of (index, value) pairs. For example:
>>> numbers = ["zero", "one", "two"]
>>> for i, s in enumerate(numbers):
... print i, s
...
0 zero
1 one
2 two
在 Java 中有什么方法可以做到這一點嗎?
Is there any way of doing this in Java?
推薦答案
對于實現 List
接口,可以調用listIterator()
方法獲取 ListIterator
.迭代器(除其他外)有兩種方法 - nextIndex()
,獲取索引;和 next()
,獲取值(與其他迭代器一樣).
For collections that implement the List
interface, you can call the listIterator()
method to get a ListIterator
. The iterator has (amongst others) two methods - nextIndex()
, to get the index; and next()
, to get the value (like other iterators).
所以上面 Python 的 Java 等價物可能是:
So a Java equivalent of the Python above might be:
import java.util.ListIterator;
import java.util.List;
List<String> numbers = Arrays.asList("zero", "one", "two");
ListIterator<String> it = numbers.listIterator();
while (it.hasNext()) {
System.out.println(it.nextIndex() + " " + it.next());
}
與 Python 一樣,輸出:
which, like the Python, outputs:
0 zero
1 one
2 two
這篇關于是否有與 Python 的“枚舉"函數等效的 Java?的文章就介紹到這了,希望我們推薦的答案對大家有所幫助,也希望大家多多支持html5模板網!