黑马程序员技术交流社区

标题: 这个是数组的反射,错在哪? [打印本页]

作者: 黑马伍仪华    时间: 2012-3-10 18:45
标题: 这个是数组的反射,错在哪?
        private static void fansheArray(Object obj1){
                 Class obj2= obj1.getClass();
        if(obj2.isArray()){
                int len=0;
                len=Array.getLength(obj2);
                for (int i = 0; i <len; i++) {
                        System.out.println(Array.get(obj2, i));
                       
                }
        }else{System.out.println(obj2);}
       
}为什么老是打印不了我想要的数组呢
作者: 王睿    时间: 2012-3-10 19:44
  1.     private static void fansheArray(Object obj1){
  2.         Class obj2= obj1.getClass();
  3.         if(obj2.isArray()){
  4.                
  5.                int len=Array.getLength(obj1);
  6.                for (int i = 0; i <len; i++) {
  7.                       
  8.                        System.out.println(Array.get(obj1, i));
  9.                       
  10.                }
  11.         }else{
  12.                 System.out.println(obj1);
  13.         }

  14.     }
复制代码
obj2  换成 obj1
作者: 黑马伍仪华    时间: 2012-3-10 19:55
王睿 发表于 2012-3-10 19:44
obj2  换成 obj1

改好了,不过这是为什么呢?
作者: 王睿    时间: 2012-3-10 20:00
黑马伍仪华 发表于 2012-3-10 19:55
改好了,不过这是为什么呢?

obj2 是数组的字节码,得到这个字节码就是为了判断一下传进来的obj1是不是数组。

作者: 黑马伍仪华    时间: 2012-3-10 20:02
知道了,谢谢




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