java 在做一些泛类的时候需要根据传进来的 属性值 来获取实体类的属性。
这个时候需要讲File[]中的 name(propertyName)首字母转换成大写
然后拼写字符串 get+name 获取method
char[]
cs=name.toCharArray();
cs[0]-=32;
name= String.valueOf(cs);
List
models = new ArrayList();
models.add(studentA);
models.add(studentB);
models.add(studentC);
List<String> pros = new ArrayList<String>();
pros.add("name");
if(models.size()!=0){
for(Object obj:models){
for(String pro:pros){
Field field=obj.getClass().getDeclaredField(pro);
SuppressWarnings sup = field.getAnnotation(SuppressWarnings.class);
System.out.println(sup.value());
Type type = field.getType();
System.out.println(type.getTypeName());
char[] cs=pro.toCharArray();
cs[0]-=32;
pro = "get"+String.valueOf(cs);
Method method = obj.getClass().getMethod(pro);
String name = (String)method.invoke(obj);
System.out.println("================");
System.out.println(name);
}
}
}
本文介绍如何在Java中使用反射机制动态获取实体类的属性值,通过修改字符串首字母大小写并调用相应getter方法实现。示例代码展示了遍历对象集合并打印特定属性的过程。
2264

被折叠的 条评论
为什么被折叠?



