public class Test {
String str = new String("hello");
char[] ch = {'a','b','c'};
public void function(String str,char ch[]){
str = "world";
ch[1] = 'd';
}
public static void main(String[] args) {
Test test1 = new Test();
test1.function(test1.str,test1.ch);
System.out.println(test1.str+ " and ");
System.out.println(test1.ch);
}
}
我们来看下上面代码,定义一个String对象,并赋初始值为“hello”, 定义一个ch字符数组,定义一个function方法,里面有两参数,并赋初始值,world和字符索引为1的字符'd',当我们来测试的时候,创建Test对象,调用function函数,str的值world被覆盖变成hello,ch的值第索引为1的值替换成了adc,所以输出为 hello and adc
该代码示例展示了Java中如何在方法内修改传递的字符串引用和字符数组。在`function`方法中,字符串`str`被重新赋值为world,但原始的hello并未改变;而字符数组`ch`的第二个元素被更改为'd',导致输出为`helloandadc`。这体现了Java中基本类型和对象的传递差异。
1万+

被折叠的 条评论
为什么被折叠?



