我有一个用Java写的ArrayList,里面全是整数,我通过get方法访问它。现在,我需要数组列表int对象作为int来执行一些操作。所以,我要做的是,
int i = Integer.parseInt(arraylist.get(position).toString()) + 100 ...有没有其他更好的方法来做到这一点(意味着高效)?
发布于 2012-05-01 17:32:58
您使用的是什么版本的Java?从Java1.5开始,“自动装箱”特性应该会帮你解决这个问题。
int i = arrayList.get(position) + 100;发布于 2012-05-01 17:31:49
是-不要转换成字符串,然后再转换回来!
int i = arrayList.get(position).intValue() + 100;或者使用自动拆箱:
int i = arrayList.get(position) + 100;正如评论中提到的,当表达式仅用于赋值表达式(或作为方法参数)时,我对自动拆箱很满意-当它用作算术表达式的一部分时,我通常更喜欢显式。
(请注意,您的列表将充满Integer引用,而不是int值。)
发布于 2012-05-01 17:33:08
也许:
List<Integer> myList = new ArrayList<Integer>();
myList.put(1);
myList.put(2);
...
int num = myList.get(index) + 100;或者做任何你喜欢的事情,集合将只包含整数,所以你不需要转换它。另外,自动装箱会处理int->Integer和back。
https://stackoverflow.com/questions/10395852
复制相似问题