java 反射 数据类型转换

2025-04-04 22:27:42
推荐回答(1个)
回答(1):

给你一段属性反射的代码,你自己看着改吧

       Field[] fs = userCla.getDeclaredFields();
       for(int i = 0 ; i < fs.length; i++){
           Field f = fs[i];
           f.setAccessible(true); //设置些属性是可以访问的
           Object val = f.get(bean);//得到此属性的值   
      
           System.out.println("name:"+f.getName()+"\t value = "+val);
          
           String type = f.getType().toString();//得到此属性的类型
           if (type.endsWith("String")) {
              System.out.println(f.getType()+"\t是String");
              f.set(bean,"12") ;        //给属性设值
           }else if(type.endsWith("int") || type.endsWith("Integer")){
              System.out.println(f.getType()+"\t是int");
              f.set(bean,12) ;       //给属性设值
           }else{
              System.out.println(f.getType()+"\t");
           }
          
       }

基本就是getType()之后,根据type的类型来反射