一个小小的疑问关于java是值传递
我有个小疑问,坐等高手解释:
public class ReferenceOrValueTest {
/**
* @param args
*/
public static void main(String[] args) {
Map<String,List<String>> map = new HashMap<String,List<String>> ();
List<String> list = new ArrayList<String>();
list.add("1");
list.add("2");
map.put("a", list);
System.out.println("size:"+map.get("a").size());
//获取到map中的List
List<String> newList = map.get("a");
//给该List添加新的值
newList.add("3");
newList.add("4");
//如果是值传递的话,改变newList的值应该不会影响到
//map中的list的值,可是结果是改变了,为什么?
System.out.println("size:"+map.get("a").size());
}
}
...全文
相关推荐
详解java的值传递、地址传递、引用传递
下面是一个简单的示例代码,用于演示java的值传递机制:```javapublic class ObjectTrans { public static void main(String[] args)
Java中的值传递和引用传递实例介绍
我们将详细探讨Java中的值传递和引用传递的概念,以及它们之间的区别。首先,值传递是Java中最基本的参数传递方式。当一个变量作为参数传递给方法时,实际上是传递了该变量存储值的一个副本。
为什么Java只有值传递
Java语言是一种强类型、面向对象的编程语言,其默认的参数传递方式是值传递(Pass-by-value)。在深入理解Java中的值传递机制之前,我们需要先了解两种基本的参数传递概念:值传递和引用传递。
Java中的值传递和引用传递
Java中的值传递和引用传递是编程中两个重要的概念,它们在处理函数参数时,决定了内部操作如何影响外部变量。在Java中,传递方式取决于参数的类型。1. 值传递: - 基本数据类型(如 int
一文秒懂java到底是值传递还是引用传递
Java语言中,方法参数的传递方式是许多开发者在学习和使用过程中的常见疑惑点,也经常成为面试中的热点问题。究竟Java是值传递还是引用传递?


