javaobjectlist
⑴ java list<object>如何去重
List<String>list=newArrayList<>();
/*list.add("abc");
list.add("abc");
list.add("def");
list.add("bcd");*/
Set<String>set=newLinkedHashSet<>();//这种方式保证去重后的元素相对位置不变
//Set<String>set=newHashSet<>();//这种方式去重后元素的位置很有可能变化了
set.addAll(list);
list.clear();
list.addAll(set);
for(Strings:list){
System.out.println(s);
}
整个思路就是利用set中的元素是不重复的,来达到去重的目的
⑵ java 将Object转成List
通常我们遇到这个问题是出现在Object转化为目标类型时,这个转化并不是安全的。
这个问题普遍认为因为使用了jdk1.5或者1.6的泛型,request.getAttribute("***")得到的是一个默认为Object的类型,当把他们转成List<***>时,编译器认为有可能会出错,所以提示这个类型安全。
以下是大家普遍用的取消警告的方法(不过危险并没有解除):
一、方法上添加@SuppressWarnings("unchecked")
二、Eclipse的Window->Preferences->Java->Compiler->Errors/Warning->Generic types中Unchecked generic type operation设置为Ignore。
三、Eclipse的Window->Preferences->Java->Compiler将Compiler compliance level 设置为小于1.5
(2)javaobjectlist扩展阅读:
@Override
public List<LocalObtMind> listByProperties(int start, int number) throws Exception {
String sql = "select * from (SELECT "
+ "decrypt_des(s.ddatetime, 'szmb#1601') ddatetime,"
+ "decrypt_des(s.obtid, 'szmb#1601') obtid,"
+ "decrypt_des(s.wd2df, 'szmb#1601') wd2df,"
+ "decrypt_des(s.t, 'szmb#1601') t,"
+ "decrypt_des(s.p, 'szmb#1601') p,"
+ "decrypt_des(s.hourr, 'szmb#1601') hourr "
+ "FROM t_LocalObtMind s) order by ddatetime desc ";
Query query = em.createNativeQuery(sql.trim());
query.setFirstResult(start);
query.setMaxResults(number);
List<Object> list = null;
List<LocalObtMind> list2 = new ArrayList<LocalObtMind>();
try{
list = query.getResultList();
for (int i = 0; i < list.size(); i++) {
LocalObtMind localObtMind = new LocalObtMind();
Object[] obj = (Object[])list.get(i);
localObtMind.setDdatetime(obj[0].toString());
localObtMind.setObtid(obj[1].toString());
localObtMind.setWd2df(obj[2].toString());
localObtMind.setT(obj[3].toString());
localObtMind.setP(obj[4].toString());
localObtMind.setHourr(obj[5].toString());
list2.add(localObtMind);
}
}catch(Exception e){
e.printStackTrace();
}
return list2;
}
⑶ java Object对象可以塞进list类型吗
可以的 所有的类都继承于Object