我阅读this blog post并继续完成问题,看看我是否可以在一小时内回答。
一个简单的挑战是使用List
循环对while
中的值求和。很简单,但值得深思。
我在下面介绍两种方法,一种使用增量索引,另一种使用Iterator
。哪种解决方案更优越,为什么?
// Using an Iterator
public static int whileSummer(List<Integer> list) {
int sum = 0;
Iterator<Integer> iterator = list.iterator();
while (iterator.hasNext()) {
sum += iterator.next().intValue();
}
return sum;
}
// Using an incremented index
public static int whileSummer(List<Integer> list) {
int sum = 0;
int i = 0;
while (i < list.size()) {
sum += list.get(i).intValue();
i++;
}
return sum;
}
我个人认为,这个论点仅仅是针对LOC,可读性和实例化开销。你觉得怎么样?