黑马程序员技术交流社区
标题:
后两行为什么报错? 求解释
[打印本页]
作者:
齐连涛
时间:
2012-11-3 15:11
标题:
后两行为什么报错? 求解释
后两行为什么报错?老师的很正常的
int[] a1=new int[3];
int[] a2=new int[4];
int[][] a3=new int[2][3];
String [] a4=new String[3];
System.out.println(a1.getClass()==a2.getClass());
//System.out.println(a1.getClass()==a4.getClass());
//System.out.println(a1.getClass()==a3.getClass());
作者:
邱峁
时间:
2012-11-3 15:25
你的a3[]是二维数组不能和a1的一维数组比较
你的a4是字符串也是不能比的
你要想必的话只能把a4转成数组
作者:
jsfjb
时间:
2012-11-3 15:28
int[] a1=new int[3];
int[] a2=new int[4];
int[][] a3=new int[2][3];
String [] a4=new String[3];
System.out.println(a1.getClass()==a2.getClass());
System.out.println(a1.getClass().equals(a4.getClass()));
System.out.println(a1.getClass().equals(a3.getClass()));
System.out.println(new String("123") == new String("234"));//这个是两个同样的对象。
//用来错误的原因:我认为两个不同类型的对象比较的话,不能用 == 比较,要用equery 比较。
{:soso_e144:}{:soso_e113:}
作者:
刘伟平
时间:
2012-11-3 15:32
a1.getClass()的类型是:Class<? extends int[]>
a2.getClass()的同样是:Class<? extends int[]>
a3.getClass()的类型是:Class<? extends int[][]>
a4.getClass()的类型是:Class<? extends String[]>
视频上没出问题,可能是当时的版本比较低
作者:
梁胜海
时间:
2012-11-3 15:33
public static void main(String[] args) {
int[] a1=new int[3];
int[] a2=new int[4];
int[][] a3=new int[2][3];
String [] a4=new String[3];
System.out.println(a1.getClass().toString());//打印结果class [I
System.out.println(a2.getClass().toString());//打印结果class [I
System.out.println(a3.getClass().toString());//打印结果class [[I
System.out.println(a4.getClass().toString());//打印结果class [Ljava.lang.String;
// System.out.println(a1.getClass()==a2.getClass());
// System.out.println(a1.getClass()==a4.getClass());
//System.out.println(a1.getClass()==a3.getClass());
} 根据打印结果,看出a1==a2,其他的就不一样,现在你知道了吧。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2