A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 蓝玉 中级黑马   /  2015-3-12 09:11  /  1092 人查看  /  7 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class diyiti
{
        public static void main(String[] args)
        {
                int[] it={1,2,3};
                char[] ch={'c','b','a'};
                String[] str={"ad","ab"};
                System.out.println(ch);
                System.out.println(str);
                System.out.println(it+"\n"+ch+"\n"+str);
        }
}
运行结果为:
cba
[Ljava.lang.String;@3e0ebb
[I@39443f
[C@1afae45
[Ljava.lang.String;@3e0ebb
为什么打印System.out.println(ch);,数组名称,能将数组内容打印出来,而不是数组地址?

7 个回复

倒序浏览
c++!!!!!!!
回复 使用道具 举报
诶~~难道是char类型有什么特别么,等大神解答。
回复 使用道具 举报
刚看到 刚试了试 真是个问题 以前没注意到过
回复 使用道具 举报
猜测是String st=new String(char[] ch)  这个构造方法可以接收一个char数组    然后System.out.println(new char[] {'c','b','a'}); 这个输出语句内部输出的时候两者有关系    但数组在api中一直找不到相关介绍的类名 查不到具体内部是怎么实现的
回复 使用道具 举报
public class diyiti
{
        public static void main(String[] args)
        {
                int[] it={1,2,3};
                char[] ch={'c','b','a'};
                String[] str={"ad","ab"};
                System.out.println(ch+"");                                  //这个地方这样试试
                System.out.println(str);
                System.out.println(it+"\n"+ch+"\n"+str);
        }
}
回复 使用道具 举报
蓝玉 中级黑马 2015-3-12 13:43:22
7#
我是想知道,为什么不是输出数组地址,而是数组内容
回复 使用道具 举报
蓝玉 发表于 2015-3-12 13:43
我是想知道,为什么不是输出数组地址,而是数组内容

这个我也想知道{:3_62:}
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马