黑马程序员技术交流社区

标题: 张老师视频中关于数组反射部分的演示问题 [打印本页]

作者: gerenvip    时间: 2013-4-27 18:55
标题: 张老师视频中关于数组反射部分的演示问题
本帖最后由 gerenvip 于 2013-4-28 09:10 编辑

在张老师视频中演示不同类型的数组时
  1.                 int[] a1 = new int[3];
  2.                 int[] a2 = new int[4];
  3.                 int[][] a3 = new int[2][3];
  4.                 String[] a4 = new String[3];
  5.                 System.out.println(a1.getClass()==a2.getClass());//true
  6.                 System.out.println(a1.getClass()==a3.getClass());//报错
  7.                 System.out.println(a1.getClass()==a4.getClass()); //报错
复制代码
我自己演示的时候,被标记的地方报错。但是视频中却没有问题是怎么回事?我改成这样后才不报错
  1.                 int[] a1 = new int[3];
  2.                 int[] a2 = new int[4];
  3.                 int[][] a3 = new int[2][3];
  4.                 String [] a4 = new String[3];
  5.                 System.out.println(a1.getClass() == a2.getClass());//true
  6.                 System.out.println(a1.getClass().equals(a3.getClass()));
  7.                 System.out.println(a1.getClass().equals(a4.getClass()));
复制代码

作者: 黄玉昆    时间: 2013-4-27 19:20
我也遇到过这样的问题,我个人认为是JDK版本的问题,我用的是JDK7.0的,而张老师应该用的是5.0的,我不知道是不是这个原因,这个问题我也纠结了好长时间
作者: gerenvip    时间: 2013-4-27 19:28
黄玉昆 发表于 2013-4-27 19:20
我也遇到过这样的问题,我个人认为是JDK版本的问题,我用的是JDK7.0的,而张老师应该用的是5.0的,我不知道 ...

我估计也是这样的,呵呵!:)谢啦,让我放心啦
作者: 黄玉昆    时间: 2013-4-27 19:35
gerenvip 发表于 2013-4-27 19:28
我估计也是这样的,呵呵!谢啦,让我放心啦

我刚才有尝试了一下,你这样试一试:

  1.                
  2.                 int[] a1 = new int[]{1,2,3};
  3.                 int[] a2 = new int[4];
  4.                 int[][] a3 = new int[2][3];
  5.                 String[] a4 = new String[]{"a","b","c"};
  6.                
  7.                 System.out.println(a1.getClass() == a2.getClass());
  8.                 System.out.println((Object)a1.getClass() == a3.getClass());
  9.                 System.out.println((Object)a1.getClass().getName());
  10.                 System.out.println((Object)a1.getClass() == a4.getClass());
  11.                
复制代码

作者: 王瑞    时间: 2013-4-27 19:53
这个问题捣鼓了好久,我也认为是JDK版本的问题!
作者: gerenvip    时间: 2013-4-27 20:13
本帖最后由 gerenvip 于 2013-4-27 20:23 编辑
黄玉昆 发表于 2013-4-27 19:35
我刚才有尝试了一下,你这样试一试:

好的。
还有一个问题希望你能帮我解答一下,呵呵呵!
http://bbs.itheima.com/thread-47872-1-1.html  谢谢啦!

按照你个的方法,强转成Object,这个http://bbs.itheima.com/thread-47872-1-1.html  帖子中的问题,也能解决了,但是想问一下,和Object好不加有什么区别呢?
作者: 黄玉昆    时间: 2013-4-27 20:25
gerenvip 发表于 2013-4-27 20:13
好的。
还有一个问题希望你能帮我解答一下,呵呵呵!
http://bbs.itheima.com/thread-47872-1-1.html  谢 ...

好的,已经回复你了,如果你这个没问题了,请修改一下分类,谢谢




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2