list.stream().forEach(s-> System.out.println(s));

一对list集合中的Integer类型元素进行操作

1、对List集合中的Integer类型元素进行求最大,最小,平均值。

 //Integer类型求和
        System.out.println("===========Integer类型求和==================");
        Integer sum = list.stream().reduce(Integer::sum).orElse(0);
        Integer sum1 = list.stream().mapToInt(Integer::intValue).sum();
        System.out.println(sum+","+sum1);
        //Integer类型求最大值
        System.out.println("===========Integer类型求最大值==================");
        Integer max = list.stream().reduce(Integer::max).orElse(0);
        int max1 = list.stream().mapToInt(Integer::intValue).max().getAsInt();
        Syste
对集合进行遍历 list.stream().forEach(s-> System.out.println(s));一对list集合中的Integer类型元素进行操作1、对List集合中的Integer类型元素进行求最大,最小,平均值。 //Integer类型求和 System.out.println("===========Integer类型求和=================="); Integer sum = list.stream().reduce(I
Java8原生只提供了summingInt、summingLong、summingDouble三种基础类型的方法,想要对BigDecimal类型的数据操作需要自己新建工具类如下: 新建接口ToBigDecimalFunction @FunctionalInterface public interface ToBigDecimalFunction<T> { BigDecimal applyAsBigDecimal(T value); 新建工具类CollectorsUtil publi
List<Integer> numList = Arrays.asList(1,2,5,10); //方法一: int max = numList.stream().mapToInt(x -> x).summaryStatistics().getMax(); int min = numList.stream().mapToInt(x -> x).summaryStatistics().getMin(); doubl...
StreamJava8 处理集合的关键抽象概念,它可以指定你希望对集合进行的操作,可以执行非常复杂的查找、过滤和映射数据等操作。stream不是数据结构,不会保存数据;惰性求值,流在间处理过程,只是对操作进行了记录,并不会立即执行,需要等到执行终止操作的时候才会进行实际的计算。 直接上代码:为了方便验证,有些间加了条件,筛出部分数据进行操作 @Test void testStream(){ List<Persion> list = new ArrayList
//数据类型转换 String[] integerArray = {"1", "2.3", "8"}; List<String> list = new ArrayList<>(Arrays.asList(integerArray)); double sum = list.stream().mapToDouble(Double::parseDouble).summaryStatistics().getSum(); Integer[] integerArray = {1,
1.使用场景 比如评论系统,我们有多项打分,我们要同时对多个评分项求平均值,这个在数据库可以直接通过SQL也可以解决,在java 8后提供的Stream API也能解决这种求值问题,不适合数据量太大的统计。 2.数据对象 * 用户评分实体 public class UserCommentDTO implements Serializable { * 详...
public static void main(String[] args) { // 创建一个Map对象 Map<String, Integer> map = new HashMap<>(); map.put("A", 1); map.put("B", 2); map.put("C", 3); // 使用Stream遍历Map的键值对 map.entrySet().stream() .forEach(entry -> System.out.println("Key: " + entry.getKey() + ", Value: " + entry.getValue())); // 使用Stream遍历Map的键 map.keySet().stream() .forEach(key -> System.out.println("Key: " + key)); // 使用Stream遍历Map的值 map.values().stream() .forEach(value -> System.out.println("Value: " + value)); 上述代码,我们创建了一个包含键值对的Map对象,并使用Stream遍历该Map。我们分别使用`entrySet()`方法获取键值对的Set视图,`keySet()`方法获取键的Set视图,以及`values()`方法获取值的集合视图,并使用Stream对它们进行遍历。在遍历过程,我们使用了Lambda表达式来输出键和值。