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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

代码如下:
class A {                          
        public static void main(String[] args) {
                String[] arr = new String[5] ;
                System.out.println(arr);
                System.out.println(arr[0]);
                System.out.println("-----------------------");

                char[] arr1 = new char[5] ;
                System.out.println(arr1);             //没有输出
                System.out.println(arr1[0]);          //没有输出
                System.out.println("-----------------------");

                int[] arr2 = new int[5] ;
                System.out.println(arr2);
                System.out.println(arr2[0]);
        }
}



输出结果为:
[Ljava.lang.String;@1175422
null
-----------------------





-----------------------
[I@949f69
0

3 个回复

倒序浏览
char类型数组可以输出地址值的,同时字符元素的默认值'\u0000'也是有输出,为空格。
  1. class Test
  2. {
  3.         public static void main(String[] args)
  4.         {
  5.                 char[] ch = new char[5];
  6.                 System.out.println("输出ch="+ch);
  7.                 for(int i=0;i<ch.length;i++)
  8.                 {
  9.                         System.out.print(ch[i]+",");
  10.                 }
  11.         }
  12. }
复制代码

控制台输出结果:
输出ch=[C@1db9742
第二行复制不过来,给你打出来
, , , , ,
空格逗号 空格逗号 空格逗号 空格逗号 空格逗号
回复 使用道具 举报
itismyhao 发表于 2016-7-1 04:26
char类型数组可以输出地址值的,同时字符元素的默认值'\u0000'也是有输出,为空格。

控制台输出结果:

关于string,刚转学java,在补java基础没用到,不敢误人子弟。
回复 使用道具 举报
没有输出默认字符值可以理解为实际输出了空格,但没有识别.
但数组地址输出时如果去掉("输出ch="+)后为什么没有输出地址?按照道理应该也是会有地址值输出的。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马