<span style="font-size:18px;"><strong>map 遍历</strong></span>
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("1", "value1");
map.put("2", "value2");
map.put("3", "value3");
//第一种:普遍使用,二次取值
System.out.println("通过Map.keySet遍历key和value:");
for (String key : map.keySet()) {
System.out.println("key= "+ key + " and value= " + map.get(key));
}
//第二种
System.out.println("通过Map.entrySet使用iterator遍历key和value:");
Iterator<Map.Entry<String, String>> it = map.entrySet().iterator();
while (it.hasNext()) {
Map.Entry<String, String> entry = it.next();
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//第三种:推荐,尤其是容量大时
System.out.println("通过Map.entrySet遍历key和value");
for (Map.Entry<String, String> entry : map.entrySet()) {
System.out.println("key= " + entry.getKey() + " and value= " + entry.getValue());
}
//第四种
System.out.println("通过Map.values()遍历所有的value,但不能遍历key");
for (String v : map.values()) {
System.out.println("value= " + v);
}
}
反射解析Resultset
private static <T> List<T> ResultToObject( ResultSet rs,Class<T> entityClass){
List<T> list=new ArrayList<T>();
try{
Field[] field = entityClass.getDeclaredFields();
while(rs.next()){
T entity = (T) entityClass.newInstance();
for(Field it:field){
String name=it.getName();
String parameterType=it.getType().getSimpleName();
String methodName="set"+((name.charAt(0) + "").toUpperCase())+name.substring(1);
Method method = entity.getClass().getDeclaredMethod(methodName,
it.getType());
if (parameterType.equals("String")) {
method.invoke(entity, rs.getString(name));
} else if (parameterType.equals("Character")) {
method.invoke(entity, rs.getString(name));
} else if (parameterType.equals("Boolean")) {
method.invoke(entity,rs.getBoolean(name));
} else if (parameterType.equals("Short")) {
method.invoke(entity, rs.getShort(name));
} else if (parameterType.equals("Integer")) {
method.invoke(entity, rs.getInt(name));
} else if (parameterType.equals("Float")) {
method.invoke(entity, rs.getFloat(name));
} else if (parameterType.equals("Long")) {
method.invoke(entity, rs.getLong(name));
} else if (parameterType.equals("Double")) {
method.invoke(entity, rs.getDouble(name));
} else if(parameterType.equals("Date")){
method.invoke(entity, rs.getDate(name));
}
}
list.add(entity);
}
}catch(Exception e){
e.printStackTrace();
}
return list;
}