JDK8的stream中的groupBy 还是有点作用的, 其他的只是简洁代码
@Test
public void group() {
ABC[] types = new ABC[] { ABC.KEY, ABC.AUCTION,
ABC.FASTSELLER, ABC.INFORMATION,
ABC.FASTSELLER };
List<ABC> list = Arrays.asList(types);
list.sort((type1, type2) -> {
return Integer.compare(type1.getSort(), type2.getSort());
});
list.forEach(s -> System.out.println(s.getTypeName()));
Map<String, List<ABC>> group = list.stream().collect(
Collectors.groupingBy(ABC::getTypeName));
group.forEach((name, g) -> System.out.format("name %s has %s\n", name, g.stream().map(t -> t.getTypeName())
.collect(Collectors.joining(","))));
}
分享到:
相关推荐
List<Menu> children = all.stream().filter(m -> { return Objects.equals(m.getParentId(), root.getId()); }).map((m) -> { m.setChildList(getChildrens(m, all)); return m; } ).collect(Collectors.to...
JDK8特性(Lambda表达式+StreamAPI的简单使用示例代码)
这个压缩包“jdk8_API”包含了JDK 8的官方帮助文档,它是开发者理解和使用JDK 8的重要参考资料。 首先,JDK 8最显著的变化之一是Lambda表达式。这是一种简洁的匿名函数形式,可以作为参数传递或用作返回值。Lambda...
这个"jdk8官方文档"包含了详细的开发者指南、API参考、教程和其他资源,帮助开发者理解和利用JDK 8的功能。以下是文档中涵盖的一些关键知识点: 1. **lambda表达式**:JDK 8引入了对函数式编程的支持,主要体现在...
JDK 8是Oracle公司发布的Java平台标准版的一个重要版本,首次发布于2014年3月。这个版本引入了许多新特性,极大地提升了开发效率和代码质量。本篇文章将详细介绍JDK 8的关键特性和使用方法。 1. **Lambda表达式**...
在这个场景中,我们关注的是JDK 8的RPM安装包,这是一种专为使用Red Hat Package Manager (RPM)的Linux发行版设计的软件包格式。 **一、JDK的组成部分** 1. **Java编译器** (javac):将源代码编译成可执行的字节码...
在这个名为"jdk8.zip"的压缩包中,包含了一个重要的文件"jdk8.exe",这通常是Windows操作系统下的JDK安装程序。 1. **模块系统**:JDK 8引入了JSR 294的模块系统(Java Platform Module System,JPMS),它通过模块...
在这个“jdk8免安装版”中,我们拥有的是已经解压并可以直接使用的JDK8版本,无需进行常规的安装过程。 首先,让我们了解一下JDK8的主要特性: 1. **lambda表达式**:这是JDK8最显著的改变之一,它简化了处理函数...
**Java Development Kit (JDK) 8 是Java编程语言的核心组件,它包含了开发和运行Java应用程序所需的工具和库。此版本是JDK的第181次更新,即JDK 1.8 Update 181(也称为JDK 8u181),它是一个重要的维护版本,提供了...
在Java编程领域,JDK8是极其重要的一个版本,它引入了许多新特性,提升了开发效率和程序性能。本文将详细介绍如何在Windows操作系统上安装JDK8,以及探讨其主要特性和应用。 **1. JDK8的下载与安装** 首先,你需要...
标题和描述中提到的"jdk-8u25、jdk-8u111、jdk-8u131、jdk-8u181、jdk-8u201"代表了不同版本的JDK,这些版本都是针对Java 8的更新版本,"u"后面的数字代表更新(Update)次数。 Java 8是Oracle公司发布的Java平台...
Stream API是JDK8的一大亮点,它提供了用于操作集合的新方式,支持串行和并行流,可以进行高效的数据处理和聚合操作,如map、filter、reduce等。 **5. Date和Time API重构** JDK8对日期和时间API进行了重大改进,...
在这个压缩包中,包含两个主要文件:`jdk-8u391-windows-x64.exe`是JDK8的Windows 64位安装程序,`jdk api 1.8_google.CHM`则是JDK8的API中文文档。 首先,让我们详细探讨一下JDK8的安装过程。`jdk-8u391-windows-x...
标题“jdk8-8u191.zip”指的是Java Development Kit (JDK) 的第8个版本,更新191,以ZIP格式压缩的安装包。这个版本是针对Linux操作系统的,适合开发者在Linux环境下进行Java应用程序的开发和运行。 JDK是Oracle...
Java Development Kit (JDK) 1.8,通常被称为JDK 8,是Java编程语言的一个重要版本,由Oracle公司发布。这个版本引入了许多新特性、优化和改进,旨在提高开发人员的效率和代码的可维护性。 JDK 8中文说明文档提供了...
JDK 8是Oracle公司发布的Java平台标准版的一个重要版本,它引入了许多新特性,对Java社区产生了深远影响。在本篇文章中,我们将深入探讨JDK 8的关键特性和其对开发工作的重要性。 首先,让我们关注JDK 8中的主要新...
JDK8U202是Oracle公司发布的一个重要更新版本,尤其值得注意的是,这是JDK 8的最后一个免费提供商业支持的版本。此版本包含了针对Windows和Linux操作系统的64位版本,对于那些依赖Java 8的企业和开发者来说,这是一...
**Java Development Kit (JDK) 8 中文手册** JDK 8是Oracle公司发布的Java编程语言和Java平台标准版(Java SE)的第8个主要版本。这个版本引入了许多新特性和改进,旨在提高开发者的生产力和代码的运行效率。JDK 8...
Java Development Kit (JDK) 8 是Java编程语言的核心组件,包含了Java运行环境(Java Runtime Environment,JRE)以及开发工具。这个压缩包合集包含了适用于三种主要操作系统的64位版本:Windows、Linux和macOS。...
Stream API也是JDK8的一大亮点,它允许对集合进行高效、声明式的操作,提高了代码的可读性和简洁性。此外,新版本还引入了默认方法,使得接口可以有实现,增强了多线程处理的并发工具,比如ForkJoinPool和Parallel ...