本文主要是介绍hashset将list去重并拼接成字符串,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
项目中突然用到,随便写了一下,应该有更简单、更有效率的方法,请指教。。
将[{WT=22, DEPT=22, USER=11}, {WT=22, DEPT=22, USER=11}, {WT=222, DEPT=222, USER=121}]转换成
不重复的user:121||11
不重复的dept:222||22
所有数据拼接:11,22,22||11,22,22||121,222,222
返回到页面,拼成表格
package tong.hadoop.workmapreduce;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.HashSet;
import java.util.Iterator;
import java.util.List;
import java.util.Map;
public class Test {
public static void main(String args[]){
List list=new ArrayList();
Map map = new HashMap();
map.put("USER", "11");
map.put("DEPT", "22");
map.put("WT", "22");
list.add(map);
Map map2 = new HashMap();
map2.put("USER", "11");
map2.put("DEPT", "22");
map2.put("WT", "22");
list.add(map2);
Map map3 = new HashMap();
map3.put("USER", "121");
map3.put("DEPT", "222");
map3.put("WT", "222");
list.add(map3);
//获取人员字符串 部门字符串
List userList=new ArrayList();
List deptList=new ArrayList();
for(int i=0;i<list.size();i++){
Map map11=(Map) list.get(i);
userList.add(map11.get("USER"));
deptList.add(map11.get("DEPT"));
}
System.out.println(getStr(userList));
System.out.println(getStr(deptList));
//获取联合字符串
String conStr="";
for(int i=0;i<list.size();i++){
Map map11=(Map) list.get(i);
conStr+=(map11.get("USER")+","+map11.get("DEPT")+","+map11.get("WT")+"||");
}
System.out.println(conStr.substring(0, conStr.length()-2));
}
public static String getStr(List list){
//去重
HashSet set=new HashSet();
for(Object e:list){
set.add(e);
}
String userStr="";
Iterator<String> iterator=set.iterator();
while(iterator.hasNext()){
userStr+=iterator.next()+"||";
}
userStr = userStr.substring(0, userStr.length()-2);
return userStr;
}
}
这篇关于hashset将list去重并拼接成字符串的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!