- public class A
- {
- String str = new String("good");
- char[] ch = {'a','b','c'};
- public static void main(String[] args){
- A a = new A();
- a.change(a.str,a.ch);
- System.out.print(a.str + "and"); //a.str的值是good
- System.out.print(a.ch);
- }
- public void change(String str, char[] ch){
- str = "test ok";
- ch[0] = 'g'; //原来是abc,改变0角标元素,就变成gba了
- }
- }
复制代码
为什么字符数组不是打印成[@12345455的形式?
[@12345455的形式是 数组的哈希地址值。System.out.print(char[]);这个是System.out.print中自带的,输出时本身就支持直接打印字符数组。
但System.out.print中没有System.out.print(int[]);这个函数,所以打印System.out.print(int[]);时会输出地址值。
|