将一系列对象转换为属性的链表
将一系列对象转换为属性的链表
我的目标:以一种优雅的Java 8方式,从一个LinkedList
public static void main(String[] args) {
LinkedList
users.add(new User(1, "User1"));
users.add(new User(2, "User2"));
users.add(new User(3, "User3"));
// 传统的Java方法
LinkedList
for(User user : users) {
System.out.println(user.getUsername());
usernames.add(user.getUsername());
}
System.out.println("Usernames = " + usernames.toString());
// Java 8方法
users.forEach((user) -> System.out.println(user.getUsername()));
LinkedList
System.out.println("Usernames = " + usernames2.toString());
}
static class User {
int id;
String username;
public User() {
}
public User(int id, String username) {
this.id = id;
this.username = username;
}
public void setUsername(String username) {
this.username = username;
}
public void setId(int id) {
this.id = id;
}
public String getUsername() {
return username;
}
public int getId() {
return id;
}
}
我在尝试将Stream对象转换为LinkedList时遇到了困难。我可以将其转换为数组(Stream::toArray()),然后将数组转换为List(Arrays.asList(Stream::toArray())),但这种方法看起来不太优雅。我是否漏掉了什么重要的东西?