猿问

关于java赋值的疑问

例子:
1         int a = 2;
2         int b = a;
3         b = 3;
这个时候a的值还是2,因为第2行是传递的值。
30         List list = new ArrayList ();
31         list.add(1);
32         list.add(2);
35       
36         //迭代
37         Iterator  itrt = list.iterator();
38         while(itrt.hasNext()){
39             int x= (Integer)itrt.next();
40             x = 10; //list改值
41         }
 
39行的赋值貌似就是把x当成list里面当前元素的别名了,因为40行赋值后,list里面的值改变了,全都变成了10。
 
问题:
1,这个别名和引用有什么关系吗?
2,怎么判断java中的赋值?iterator的next里面有一段说明Returns the next element in the iteration. 跟这个有什么关系吗?
 
没有指针有点不适应,因为不懂概念,描述问题也不是很清楚,请各位大侠不吝赐教
qq_花开花谢_0
浏览 530回答 1
1回答

三国纷争

因为40行赋值后,list里面的值改变了,全都变成了10。   扯淡吧,你再看一遍,list内的值不会改的。
随时随地看视频慕课网APP

相关分类

Java
我要回答