我有一个快速的问题,我有点不清楚哪一个是更好的练习。
假设我有一个收藏,c,里面有数字3,5和8。
Collection<Integer> c = new ArrayList<Integer>(); c.add(3); c.add(5); c.add(8);
我理解每个循环的概念,但是我不清楚其中的一个部分。
我是写:for(Integer i: c){}还是for(int i: c)?
如果可能的话,请评论速度,效能,优点和缺点或每一个。
发布于 2014-02-21 22:14:54
这取决于您在for-each循环中要做什么,以及您是否需要“重新装箱”一个int,或者您需要多长时间打开一个Integer。这还取决于您希望如何或是否要处理null --如果您希望允许null,则必须使用Integer。
坦率地说,无论是哪种方式,这都不太可能产生重大影响。
发布于 2014-02-21 22:16:30
整数将int值映射为对象,因此int可以为空,但int不能。
发布于 2014-02-21 22:17:16
您的集合包含Integer,最好使用for (Integer i: c)进行迭代。您需要这样做,以避免不必要地将Integer取消到int。
https://stackoverflow.com/questions/21946258
复制相似问题