[Ljava.lang.String;@3e5084c9:是一个字符串数组的字节码表示
打印一个字符串数组的话,会发现
1 String[] arr = new String[10]; 2 3 // String[] arr = {"yanggb", "huangq"}; 4 5 System.out.println(arr); // [Ljava.lang.String;@3e5084c9
这里直接打印了数组名,因为数组是引用数据类型,数组名是数组的管理者,而非所有者。
下面是打印出来的数组名([Ljava.lang.String;@3e5084c9)的含义解释。
【[】:表示一维数组 。
【[[】:表示二维数组 。
【L】:表示一个对象 。
【java.lang.String】:表示对象的类型 。
【@】:后面表示该对象的hashCode。
因此访问数组元素时,需要另外使用for循环遍历数组,不能直接通过数组名访问所有数组元素。
原文链接:
https://www.cnblogs.com/yanggb/p/11504471.html
声明:此博客为个人学习之用,如与其他作品雷同,纯属巧合,转载请指明出处!