我有一张树形图:
Map<Date, String> Sx = new TreeMap<Date, String>();
我使用aLoader填充它并继续添加值,现在我检索这些值,如:
if(Sx.isEmpty() != true){
for (Map.Entry<Date,String> entry : Sx.entrySet()) {
//Some logic
}
我如何知道我目前正在处理的迭代次数?类似于for循环中的int i?
答案 0 :(得分:1)
自己制作:
int i = 0;
for (Map.Entry<Date,String> entry : Sx.entrySet()) {
//Some logic
i++;
}
Log.d(TAG, "I've been through the loop " + i + " times");
答案 1 :(得分:1)
还有另一种方式。
鉴于您编写自己的Index类和一个静态方法,该方法返回此类实例的Iterable,您可以
for (Index<String> each: With.index(stringArray)) {
each.value;
each.index;
...
}
With.index的实现类似于
class With {
public static <T> Iterable<Index<T>> index(final T[] array) {
return new Iterable<Index<T>>() {
public Iterator<Index<T>> iterator() {
return new Iterator<Index<T>>() {
index = 0;
public boolean hasNext() { return index < array.size }
public Index<T> next() { return new Index(array[index], index++); }
...
}
}
}
}
}