美文网首页
使用Java 8的新特性可以使用流(Stream)和Lambda

使用Java 8的新特性可以使用流(Stream)和Lambda

作者: 爱学习的蹭蹭 | 来源:发表于2023-09-18 09:54 被阅读0次

使用Java 8的新特性可以使用流(Stream)和Lambda表达式来编写一个List中多个重复字符串的统计代码。下面是一个示例代码:

import java.util.ArrayList;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;

public class Main {
    public static void main(String[] args) {
        List<String> strings = new ArrayList<>();
        strings.add("111-aa");
        strings.add("111-aa");
        strings.add("22-bb");
        strings.add("333-cc");
        strings.add("111-dd");
        strings.add("444-ee");
        
        Map<String, Long> countMap = strings.stream()
                .collect(Collectors.groupingBy(Function.identity(), Collectors.counting()));
        
        countMap.forEach((str, count) -> System.out.println(str + ": " + count));
    }
}

这个示例代码将统计List中每个字符串出现的次数,并输出结果。输出结果将以字符串为键,出现次数为值进行展示。在输出结果中,重复的字符串会被统计为多次出现。

输出结果:

111-aa: 2
22-bb: 1
333-cc: 1
111-dd: 1
444-ee: 1

这段代码使用strings.stream()将List转换成流,然后使用Collectors.groupingBy(Function.identity(), Collectors.counting())对每个字符串进行分组,并计算每个分组中的元素个数。最后,使用forEach方法遍历并输出结果。

此列子是学习简单的例子。。。

相关文章

  • 2019-12-14

    java 8 特性 在java 8种主要引用了两个特性: lambda表达式和stream 流处理。 下面我将使用...

  • # java 8 特性 lambda 表达式

    java 8 特性 在java 8种主要引用了两个特性: lambda表达式和stream 流处理。 下面我将使用...

  • Java8新特性

    自从使用上了Java8的Lambda和Stream编程后,彻底的爱上了。因此决定研究下其他新特性。 Lambda表...

  • JDK8stream将list转Map对象报错java.lang

    ​ JDK8有很多新特性,比如lambda表达式,函数式编程以及stream流的使用,这几个新特性,使用过之后就爱...

  • 使用Stream API优化代码

    Java8的新特性主要是Lambda表达式和流,当流和Lambda表达式结合起来一起使用时,因为流申明式处理数据集...

  • 妙用Stream优化老代码,立马清爽了!

    Java8的新特性主要是Lambda表达式和流,当流和Lambda表达式结合起来一起使用时,因为流申明式处理数据集...

  • 《Java 8实战》学习总结

    Java 8新特性概览 Lambda表达式 流 默认方法 Lambda表达式 Lambda和函数式接口Java 8...

  • Stream流

    Stream流 java8新特性 Stream定义 A sequence of elements supporti...

  • JAVA8之lambda表达式详解,及stream中的lambd

    JAVA8之lambda表达式详解,及stream中的lambda使用深入理解Java 8 Lambda(语言篇—...

  • Lambda表达式详解

    什么是Lambda表达式 Lambda表达式是Java 8的新特性,是函数式接口的实例。使用Lambda表达式可以...

网友评论

      本文标题:使用Java 8的新特性可以使用流(Stream)和Lambda

      本文链接:https://www.haomeiwen.com/subject/vblgvdtx.html