Java的list自定义工具类ListUtils
/**
* 将list中map的key为ID的值作为KEY在套一层
*/
public static Map<String, Map<String, String>> keyToID(
List<Map<String, String>> datalist) {
Map<String, Map<String, String>> res = new HashMap<String, Map<String, String>>();
for (Map<String, String> map : datalist) {
String id = map.get("ID");
res.put(id, map);
}
return res;
}
/**
* 移除List中所有Map的某个元素
*
* @param dataByOwnerList
* @param key
* @return
*/
public static List<Map<String, String>> removeMapElementInList(
List<Map<String, String>> dataList, String key) {
for (Map<String, String> map : dataList) {
map.remove(key);
}
return dataList;
}
/**
* 将List<MAP>类型map的value取出存入List<List<Object>>
*
* @param deallist
* @return
*/
public static List<List<Object>> getForlist(
List<Map<String, Object>> deallist) {
List<List<Object>> list = new ArrayList<List<Object>>();
for (Map<String, Object> map : deallist) {
List<Object> list2 = new ArrayList<Object>(map.values());
list.add(list2);
}
return list;
}
/**
* 将List<MAP>类型map的value取出存入List<String> 如果value为null或者空字符串则为null
*
* @param deallist
* @return
*/
public static List<String> getForlistString(
List<Map<String, String>> deallist) {
List<String> list = new ArrayList<String>();
for (Map<String, String> map : deallist) {
for (Map.Entry<String, String> string : map.entrySet()) {
String str = string.getValue();
if (str == null || str.length() <= 0) {
str = "null";
}
list.add(str);
}
}
return list;
}
/**
* 将list转化为带有左右括号的sql查询条件语句,如 in (2,3,4)
*
* @author:mazhen
*/
public static String toSqlConditonalStatement(List<String> list) {
if (null == list || list.size() == 0) {
try {
throw new Exception("因为sql查询语句不能为空,所以传入的list不能为空");
} catch (Exception e) {
e.printStackTrace();
}
}
StringBuffer conditionalStatement = new StringBuffer();
conditionalStatement.append("(");
for (String str : list) {
conditionalStatement.append(str);
conditionalStatement.append(",");
}
return conditionalStatement.toString().substring(0,
conditionalStatement.toString().length() - 1)
+ ")";
}
/**
* 判断List<String>里面有没有重复的值
*
* @param list
* @return
*/
public static boolean isOverlap(List<String> list) {
String temp = "";
for (int i = 0; i < list.size() - 1; i++) {
temp = list.get(i);
for (int j = i + 1; j < list.size(); j++) {
if (temp.equals(list.get(j))) {
return false;
// System.out.println("第" + (i + 1) + "个跟第" + (j + 1)
// + "个重复,值是:" + temp);
}
}
}
return true;
}
/**
* 处理mapList中key为log_name的value,将value由路径+名称修改为仅有名称
*
* @author : mazhen
*
* @param mapList
* @return
*/
public static List<Map<String, Object>> deletePathOfLogName(
List<Map<String, Object>> mapList) {
List<Map<String, Object>> relist = new ArrayList<Map<String, Object>>();
for (Map<String, Object> map : mapList) {
String pathAndName = map.get("log_name") + "";
String[] pathAndNames = pathAndName.split(";");
String names = "";
for (String str : pathAndNames) {
names += FileUtil.getFileNameFromPath(str) + ";";
}
names = names.substring(0, names.length() - 1);
map.put("log_name", names);
relist.add(map);
}
return relist;
}
/**
* 合并两个list
*
* @return
*/
public static List<String> sumList(List<String> a, List<String> b) {
List<String> list = new ArrayList<>();
if (a != null && a.size() > 0) {
for (String string : a) {
list.add(string);
}
}
if (b != null && b.size() > 0) {
for (String string : b) {
list.add(string);
}
}
return list;
}
/**
* 合并两个ListMap
*
* @return
*/
public static List<Map<String, String>> sumListMap(
List<Map<String, String>> listA, List<Map<String, String>> listB) {
List<Map<String, String>> list = new ArrayList<Map<String, String>>();
if (listA != null && listA.size() > 0) {
for (Map<String, String> object : listA) {
list.add(object);
}
}
if (listB != null && listB.size() > 0) {
for (Map<String, String> object : listB) {
list.add(object);
}
}
return list;
}
public static List<Map<String, String>> objectToString(
List<Map<String, Object>> list) {
List<Map<String, String>> res = new ArrayList<Map<String, String>>();
for (Map<String, Object> map : list) {
res.add(MapUtil.objectToString(map));
}
return res;
}
/**
* 将查询到的结果转换成以key为键值的map,并将key从结果集中删掉
* @param map
* @return
*/
public static Map<String,Object> ListToMapKeyId(List<Map<String,Object>> map,String key,String value){
Map<String,Object> map1 = new HashMap<String,Object>();
if(map.isEmpty()){
return null;
}
for(int i = 0; i < map.size();i++){
Map<String,Object> idMap = new HashMap<String,Object>();
idMap = map.get(i);
try{
String id = String.valueOf(idMap.get(key));
if(value!=null&&!value.equals("")){
map1.put(id, idMap.get(value));
}else{
idMap.remove(key);
map1.put(id, idMap);
}
}catch(Exception e){
e.printStackTrace();
}
}
return map1;
}
// public static List<Map<String, String>> objectToString(
// List<Map<String, Object>> list) {
// List<Map<String, String>> res = new ArrayList<Map<String, String>>();
// for (Map<String, Object> map : list) {
// res.add(MapUtil.objectToString(map));
// }
// return res;
// }
public static String ListToStrBySplit(String[] tableNameList, String split){
StringBuffer buf = new StringBuffer();
for(int i = 0; i < tableNameList.length;i++){
buf.append(tableNameList[i]);
if(i!=tableNameList.length-1){
buf.append(split);
}
}
return buf.toString();
}
public static String ListToStrBySplit(Object[] tableNameList, String split){
StringBuffer buf = new StringBuffer();
for(int i = 0; i < tableNameList.length;i++){
buf.append(tableNameList[i]);
if(i!=tableNameList.length-1){
buf.append(split);
}
}
return buf.toString();
}
public static Map<String,String> ListMapToMap(List<Map<String,Object>> list){
Map<String,String> map = new HashMap<String,String>();
if(list !=null && list.size()>0){
for(int i = 0; i < list.size();i++){
Map<String,Object> listMap = list.get(i);
Set<String> sets = listMap.keySet();
for(String set:sets){
map.put((String) listMap.get(set), "Y");
}
}
}
return map;
}
发表吐槽
你肿么看?
既然没有吐槽,那就赶紧抢沙发吧!