如果我有一个示例类User的列表(如下所示),是否可以使用lambda一行为列表中的所有名称创建String数组?
class User{
String name;
int id;
}
Run Code Online (Sandbox Code Playgroud)
是。鉴于List<User> users:
String[] names = users.stream().map(user -> user.name).toArray(String[]::new);
Run Code Online (Sandbox Code Playgroud)
那就是“流式传输用户,获取每个用户的名称,并将其放入新的String数组中”。
如果您User有getName()方法,那么它将是:
String[] names = users.stream().map(User::getName).toArray(String[]::new);
Run Code Online (Sandbox Code Playgroud)