代码如下:
public class ChangeTest { private String str = new String("original"); private char[] chars = {'小','刀','哥'}; public static void main(String[] args) { ChangeTest changeTest = new ChangeTest(); changeTest.change(changeTest.str,changeTest.chars); System.out.println(changeTest.str); System.out.println(changeTest.chars); } private void change(String str, char[] chars){ str = "change success"; chars[0] = '大'; } }
运行结果为:
original
大刀哥
我的思考:
我之前在做这个题目的时候,我觉得也是这个答案,但是我对这道题理解不是很深,我想知道到底为什么明明传入参数了,也修改变量了,但是成员变量就是没改变呢?
是因为str和chars[0] 修改的都是局部变量,所以没有影响到全局变量么?
人到中年有点甜
繁花如伊
相关分类