首页 青云排行榜 知识中心 控制台

在JAVA中,指出下列程序运行的结果(     )

public class Example {
    String str = new String("good");
    char[] ch = {'a', 'b', 'c'};
    public static void main(String args[]) {
        Example ex = new Example();
        ex.change(ex.str, ex.ch);
        System.out.print(ex.str + " and ");
        System.out.print(ex.ch);
    }
    public void change(String str, char ch[]) {
        str = "test ok";
        ch[0] = g;
    }
}

good and abc

good and gbc

test ok and abc

test ok and gbc

Java中,String虽然是对象,传递的是引用,但String是特殊的,String是不会变的,也存在常量池,当字符串发生变化时,实际上是引用发生了变化,指向了新的字符串,所以参数传递String时,传入参数不会变化。
数组作为参数传递时是传递的对象引用,所以修改数组元素会导致原始数组发生变化。
关于我们
公司简介
联系我们
联系我们
售前咨询: leizhongnan@eval100.com
售后服务: 0755-26415932
商务合作: support@eval100.com
友情链接
金蝶软件
快递100
关注我们
Copyright © 2023-2023 深圳慧题科技有限公司 粤ICP备2023109746号-1 粤公网安备44030002001082