由买买提看人间百态

boards

本页内容为未名空间相应帖子的节选和存档,一周内的贴子最多显示50字,超过一周显示500字 访问原贴
Programming版 - 笨笨的问一个JAVA小问题
相关主题
面试题 -算法?有因为Spark而学习Scala的吗?
Java8的lambda很难用呀一个用java写spark应用的问题
[合集] 弱问:C++ 里的Vector在Java里用什么替代比较好?面试题求解 (转载)
[合集] 再请教一个 编译错误 (转载)java ArrayList 一问
哪位同修能帮我测试一下java的内存管理真是气死我了
C++ vs Javajava没有typedef怎么办
求问一道动态规划的题目java 里可以插入linux command吗? (转载)
python的gc做得不如java 好比较简单的Java数据输入验证问题
相关话题的讨论汇总
话题: integer话题: age2话题: arraylist话题: java话题: age1
进入Programming版参与讨论
1 (共1页)
w*********n
发帖数: 439
1
我初始化一个ArraList ,然后向这个ArrayList里面加入2个Integer,当我试
图改变其中一个Integer的值的时候,
居然改不掉。请问怎么回事?
ArrayList list = new ArrayList<>();
Integer age1 = 20;
Integer age2 = 20;
list.add(age1);
list.add(age2);
//change age2 int value to 30
age2 = 30;
System.out.println(list.get(0));
System.out.println(list.get(1));
————————————————————————————
Output:
20
20
请问为什么改不掉age2这个Integer的值。
d**********6
发帖数: 112
2
According to this post
http://stackoverflow.com/questions/3815173/increment-a-integers-int-value
Java Integer objects are immutable

【在 w*********n 的大作中提到】
: 我初始化一个ArraList ,然后向这个ArrayList里面加入2个Integer,当我试
: 图改变其中一个Integer的值的时候,
: 居然改不掉。请问怎么回事?
: ArrayList list = new ArrayList<>();
: Integer age1 = 20;
: Integer age2 = 20;
: list.add(age1);
: list.add(age2);
: //change age2 int value to 30
: age2 = 30;

e*******o
发帖数: 4654
3
age2已经改了 你直接print age2
但是你加入list的那个值是age2 的之前的value

【在 w*********n 的大作中提到】
: 我初始化一个ArraList ,然后向这个ArrayList里面加入2个Integer,当我试
: 图改变其中一个Integer的值的时候,
: 居然改不掉。请问怎么回事?
: ArrayList list = new ArrayList<>();
: Integer age1 = 20;
: Integer age2 = 20;
: list.add(age1);
: list.add(age2);
: //change age2 int value to 30
: age2 = 30;

D*****y
发帖数: 196
4
Integer is immutable. every time you reassign a value, jvm will just create
a new Integer object, which is not the same one referenced in the arrayList.
o******y
发帖数: 44
5

你的age2和list[1]根本不是一个东西呀,age2改了,不影响list[1]。

【在 w*********n 的大作中提到】
: 我初始化一个ArraList ,然后向这个ArrayList里面加入2个Integer,当我试
: 图改变其中一个Integer的值的时候,
: 居然改不掉。请问怎么回事?
: ArrayList list = new ArrayList<>();
: Integer age1 = 20;
: Integer age2 = 20;
: list.add(age1);
: list.add(age2);
: //change age2 int value to 30
: age2 = 30;

1 (共1页)
进入Programming版参与讨论
相关主题
比较简单的Java数据输入验证问题哪位同修能帮我测试一下
java有没有用户自定义长度integer类型?C++ vs Java
functional programming why?求问一道动态规划的题目
一直不习惯immutabilitypython的gc做得不如java 好
面试题 -算法?有因为Spark而学习Scala的吗?
Java8的lambda很难用呀一个用java写spark应用的问题
[合集] 弱问:C++ 里的Vector在Java里用什么替代比较好?面试题求解 (转载)
[合集] 再请教一个 编译错误 (转载)java ArrayList 一问
相关话题的讨论汇总
话题: integer话题: age2话题: arraylist话题: java话题: age1