Java stream 获取全班学生的姓名 拼接成字符串
时间: 2023-04-11 20:01:21 浏览: 60
可以使用Java stream的map和collect方法来实现获取全班学生姓名并拼接成字符串的操作,示例代码如下:
List<Student> students = new ArrayList<>();
// 假设已经将学生信息添加到students列表中
String names = students.stream()
.map(Student::getName)
.collect(Collectors.joining(", "));
System.out.println(names);
这段代码将会输出全班学生的姓名,以逗号和空格分隔开。
相关问题
java集合中对象属性拼接成字符串
要将Java集合中的对象属性拼接成字符串,可以使用Java 8 Stream API 的 map() 和 collect() 方法来实现。具体的代码示例如下所示:
```
List<Student> students = ...; // 假设存在一个名为 Student 的类
String result = students.stream()
.map(s -> s.getName() + " " + s.getAge()) // 假设存在 getName() 和 getAge() 方法
.collect(Collectors.joining(", "));
System.out.println(result); // 输出形如 "张三 18, 李四 20, 王五 22" 的字符串
```
解释一下上述代码的逻辑:首先通过 `stream()` 方法将 `students` 转成一个流,然后使用 `map()` 方法将每个 `Student` 对象转成一个字符串,其中 `getName()` 和 `getAge()` 方法获取 `Student` 对象的名字和年龄属性,并使用空格将它们拼接起来。接着使用 `collect()` 方法将这些字符串收集起来,使用逗号和空格将它们连接起来,最终得到一个整体的字符串。
java集合拼接成字符串
Java中可以使用StringBuilder或StringJoiner类来将集合拼接成字符串。
示例代码:
```java
List<String> list = Arrays.asList("John", "Mary", "Bob");
StringJoiner joiner = new StringJoiner(",");
for (String name : list) {
joiner.add(name);
}
String result = joiner.toString();
System.out.println(result); // 输出:John,Mary,Bob
```
另外,如果你使用的是Java 8及以上版本,也可以使用Stream API来实现:
```java
List<String> list = Arrays.asList("John", "Mary", "Bob");
String result = list.stream().collect(Collectors.joining(","));
System.out.println(result); // 输出:John,Mary,Bob
```