在Java中,方法中的参数可以是基本数据类型或引用数据类型,它们在方法中的表现和区别如下:
public void changeInt(int num) { num = 100; } int a = 10; changeInt(a); System.out.println(a); // 输出结果为 10
public void changeArray(int[] arr) { arr[0] = 100; } int[] b = {1, 2, 3}; changeArray(b); System.out.println(b[0]); // 输出结果为 100
在上面的例子中,changeArray() 方法接受一个 int 数组作为参数,并将数组的第一个元素修改为 100。当调用 changeArray(b) 时,b 数组的引用被传递给了 changeArray() 方法,因此在方法内部对数组的修改也会反映在原始数组上。
需要注意的是,虽然引用数据类型传递的是引用,但在方法内部将参数重新赋值并不会影响到原始数据。例如:
public void changeString(String str) { str = "hello"; } String c = "world"; changeString(c); System.out.println(c); // 输出结果为 world
在上面的例子中,changeString() 方法接受一个字符串作为参数,并将参数重新赋值为 "hello"。但是,这并不会影响到原始字符串 c 的值,因为重新赋值相当于创建了一个新的字符串对象并将参数引用指向了它。
综上所述,基本数据类型和引用数据类型在方法参数传递时的表现和区别是非常重要的,程序员需要根据具体的需求来选择适当的参数类型。
原文链接:codingdict.net