有没有一种从对象列表中获取字符串列表的有效方法?
是否有一种有效的方法可以从包含字符串字段的列表中获取字符串列表。
即我有客户对象和约会对象
public Customer {
String customerId;
String name;
List<Appointment> appointments;
public String getCustomerId() {return customerId;}
public String getName() {return name;}
public List<Appointment> getAppointments() {return appointments;}
}
public Appointments {
String appointmentId;
String employee;
}
现在,作为客户,我可以有几个不同的约会。如果我只想获得与客户关联的所有约会 ID 的列表怎么办?
类似于 -> customer.getAppointments().getId;?
回答
通过使用流api:
List<String> idList = someCustomer.getAppointments()
.stream()
.map(Appointment::getId)
.collect(Collectors.toList());
- he doesn't look very familiar with stream, maybe could help him if you add the static import of toList, or just use `Collectors.`...
- Starting with JDK 16, you should just call `toList()` on the stream instead of `collect(Collectors.toList())`.