当前位置: 代码迷 >> 综合 >> java8 新特性 集合求和、两个List集合和并一个Map集合、List<Object> 转换成 List<Double>
  详细解决方案

java8 新特性 集合求和、两个List集合和并一个Map集合、List<Object> 转换成 List<Double>

热度:21   发布时间:2023-12-18 14:38:44.0
//通过java 8  把List<Object> 转换成 List<Double>
List<Double> dList  = maxlist.stream().map((d) -> {return Double.valueOf(d + "");
}).collect(Collectors.toList());// 集合方法
List<Object> maxlist = new ArrayList<>();
maxlist.addAll(dataList);
// 移除集合null的值
maxlist.removeAll(Collections.singletonList("null"));
//字符串转换成集合
String[] strs =s.split(",");
List<Object> dataList = Arrays.asList(strs);
// 移除下标为2,3,4的3个  包头不包尾
// subList(0,3) 移除下标从哪位开始到哪一位结束包头不包尾
int anInt=2
if(anInt>0){dataList.subList(0, anInt).clear();
}// 求集合的最大和最小值
Double max = Collections.max(dList);
Double min = Collections.min(dList);
/** 把数据list 和时间list 合并成 一个 map */
// 切记两个集合size 必须一样、 map 的key 是唯一
public static  Map<Object, Object> listToMap(List<String> keys, List<Object> values) {Map<Object, Object> map = keys.stream().collect(Collectors.toMap(key -> key, key -> values.get(keys.indexOf(key))));return map;
}// java8 集合求和
List<Double> dList = maxlist.stream().map((d) -> { return Double.valueOf(d + ""); }).collect(Collectors.toList());
Double sum = dList.stream().mapToDouble(Double::doubleValue).sum();
  相关解决方案