public static void main(String[] args) throws Exception {
/*
//lang型与date型数据互转
SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
long timeStart=sdf.parse("2013-08-15 15:30:00").getTime();
System.out.println(timeStart);
//Date date = new Date(timeStart);
//System.out.println(sdf.format(date));
long tim = new Long("1373221200000");
Date date = new Date(tim);
System.out.println(sdf.format(date));
*/
Integer userAIds[]={1,2,3,4,5,6,5,4,3,2,1};
HashSet<Integer> userAIdSet = new HashSet<Integer>(Arrays.asList(userAIds));
System.out.println(userAIdSet);
List<Integer> ids = new ArrayList<Integer>();
List<Integer> list = new ArrayList<Integer>();
List<Integer> list2 = new ArrayList<Integer>();
ids.add(1);
ids.add(1);
ids.add(2);
ids.add(3);
ids.add(3);
ids.add(3);
ids.add(4);
for(int i=0;i<ids.size();i++){
if(list2.contains(ids.get(i))){
if(!list.contains(ids.get(i))){
list.add(ids.get(i));
}
}else{
list2.add(ids.get(i));
}
}
for(int j=0;j<list.size();j++){
System.out.println("重复的是"+list.get(j));
}
for(int m=0;m<list2.size();m++){
System.out.print("剔除重复后的数据是:"+list2.get(m)+"\t");
}
System.out.println();
}
当你的数据由于各种原因出现重复而又无法去除时,可以考虑,将所有数据放入第一个集合,新new一个集合(第二个),然后用contains()包含方法来处理你的重复数据,效果还行。下面是我一次实践中的应用,我是小水,希望对各位来访有帮助:
public String Alarmtype(){
HttpServletRequest request= ServletActionContext.getRequest();
String types="";//**********
List<Alarm_step> lists=alarm_stepService.querytype(types);
//去重
List<String> ids = new ArrayList<String>();
List<String> list2 = new ArrayList<String>();
if(lists.size()>0){
for(int i=0;i<lists.size();i++){
ids.add(lists.get(i).getSIGNALTYPE());
}
for(int i=0;i<ids.size();i++){
if(list2.contains(ids.get(i))){
}else{
list2.add(ids.get(i));
types=ids.get(i);
}
}
}
request.setAttribute("lists", list2);
return "sigtype";
}