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

© jiaweizhang 中级黑马   /  2015-9-22 19:57  /  164 人查看  /  0 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

Array类:数组的反射

代码实例:

package com.reflection.array;

import java.lang.reflect.Array;

public class ReflectionArray {
        public static void main(String[] args) {
                /**
                 * 数组的反射,Array类
                 */
               
                String [] strr = {"jun","frank","mack","lili"};
                prints(strr);
                prints("zhangjiawei");
        }
       
        public static void prints(Object obj){
                /**
                 * 根据传入的参数,判断是否属于数组类型
                 */
                Class cls = obj.getClass();        //获取参数的Class对象
                if(cls.isArray()){                        //判断是不是属于数组
                        int len = Array.getLength(obj);        //Array类的getLength(obj)方法获取数组的长度,参数数是一个数组类型的对象
                        for(int i = 0; i < len; i++){
                                System.out.println(Array.get(obj, i));        //get(obj,i) 取得数组的具体值,obj是所属对象,i是数组下标
                        }
                }else{
                        System.out.println(obj);
                }
        }
}

0 个回复

您需要登录后才可以回帖 登录 | 加入黑马