sql-server - 如何使用Lambda表达式将ResultSet中的数据放入HashMap?

标签 sql-server lambda hashmap java-8

我的 SQL Server 2012 数据库中有一个表,如下所示:

Student:
ID, CardNo, Name, ZipCode, city, ...

我正在使用 JDK 8 编写一个 Java 桌面应用程序,我想将此表中的选定行放入 HashMap 中,以 CardNo 作为键, >名称作为值。

使用 lambda 表达式填充此 HashMap 的有效方法是什么?

注意:CardNo 是唯一的。

最佳答案

这里有一个更简单的方法:

List<Student> students = xxxDao.retrieveStudents();

Map<Integer, String> map = students.stream()
            .collect(Collectors.toMap(Student::getCardNo, Student::getName));

此外,您还可以为 Collectors.toMap 添加静态导入,并使表达式更具可读性。

关于sql-server - 如何使用Lambda表达式将ResultSet中的数据放入HashMap?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37106072/

相关文章:

sql-server - 同一行上具有相同节点的 T-SQL 解析 XML

c# - 如何从 List<T> 中检索项目,其中一个属性恰好包含另一个列表中的单词?

java - 如何在文本文件中的两个日期之间进行搜索??? HashMap ?

java - 在java中创建字典?

mysql - 如果我从 Windows 7 的注册表中更改 ODBC DSN,我在 MS Access 中的链接表是否需要刷新?

sql - 如何选择数字随着日期增加而减少的行

C++ 转换和 lambda

java - 将 HashMap 数据保存到 SQLite

sql-server - LDF没有更新,正常吗?

c# - 聚合 lambda 表达式