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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© ShallDoll 中级黑马   /  2016-3-15 21:09  /  1082 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

public class Test {

        public static void main(String args[]) {
                int ai[] = { 1, 2, 3, 5 };
                System.out.println(ai);
               
                char ac[] = { 'a', 'b', 'c' };
                System.out.println(ac);
               
                String args1[] = { "hei", "ma" };
                System.out.println(args1);
               
                boolean aflag[] = { true, false };
                System.out.println(aflag);
        }
}
//输出数组对象,为什么char[]数组打印的是char里的字符串.而其他的类型打印输出的是地址值?
还有没有其他像char[]这样的数组.
System.out.println(ac.toString());
要是把char[]数组的对象调用toString输出却是地址值.

3 个回复

正序浏览
终于知道为什么了,不是数组的问题,而是打印输出的问题
回复 使用道具 举报
1、引用数据类型默认打印地址值;
2、String = char[];
其他求大神补充

点评

第二条说的不对,因为String重写过toString方法. String.toString打印的会是属性 而char[].toString打印的却是地址值. 而且String只能以length()方法和charAt()方法遍.....   发表于 2016-3-16 11:17
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马