如何使用每个循环打印ArrayList中元素的索引号

任何人都可以告诉我如何使用Java中的每个循环打印ArrayList中元素的索引号。

通过保持单独的索引计数:

int index=0; for(String s : list){ System.out.println(String.valueOf(index++)+": "+s); } 

使用常规for循环可能更有意义。 “增强的for循环”基于IterableIterator接口 – 它不了解底层集合的实现细节(可能没有每个元素的索引)。

当您遍历ArrayList时,您必须自己跟踪索引号。 List迭代器不会为您执行此操作。

你通常通过一个单独的变量来做到这一点。 您可以存储具有关联索引的对象,但您必须确保维护排序(通过不删除,求助等)

喜欢@Michael’s但更短。 一个宠物的痴迷我会承认。

 List list = Arrays.asList("zero", "one", "two", "three"); int index=0; for(String s : list) System.out.println((index++)+": "+s); 

版画

 0: zero 1: one 2: two 3: three 

您需要使用整数索引进行迭代,或者保持计数器运行。

 List aList; ... int index = 0; for(kind x : aList) { ... index++; } 

要么

 for(int index = 0; index < aList.size(); index++) { Kind x = aList.get(index) ... }