我定义了一个arrayList如下
List<List<RiskyPersons>> dataArray = new ArrayList<>();
这是RiskyPersons类
public class RiskyPersons {
private SA3Tenant sa3tenant;
private int NumberofPersonInCategory;
public RiskyPersons(){
}
public RiskyPersons(SA3Tenant sa3tenant, int NumberofPersonInCategory) {
this.sa3tenant = sa3tenant;
this.NumberofPersonInCategory = NumberofPersonInCategory;
}
}
然后,我成功地添加了数据并保存在dataArray ArrayList中。下面的输出显示了使用SOP(DataArray)保存的ArrayList;
[[RiskyPersons{sa3tenant=Homeless.SA3Tenant@3a7cc6b0, NumberofPersonInCategory=99}]]
我想分别阅读这个dataArray ArrayList和 ArrayList。如何访问"NumberofPersonInCategory“值?
发布于 2020-04-29 04:22:16
你需要把它迭代两倍
for (List<RiskyPersons> rp : dataArray) {
for (RiskyPersons o : rp) {
System.out.println(o.NumberofPersonInCategory); // unrelated : but its bad naming convention
}
}发布于 2020-04-29 05:06:43
来自Java-8及以上的用户可以使用流。
dataArray.stream()
.flatMap(List::stream)
.map(RiskyPersons::NumberofPersonInCategory)
.forEach(System.out::println)发布于 2020-05-16 13:30:38
我希望这能帮到你!
public class RiskyPersons {
private SA3Tenant sa3tenant;
private int NumberofPersonInCategory;
public int getNumberofPersonInCategory() {
return NumberofPersonInCategory;
}
public RiskyPersons(){
}
public RiskyPersons(SA3Tenant sa3tenant, int NumberofPersonInCategory) {
this.sa3tenant = sa3tenant;
this.NumberofPersonInCategory = NumberofPersonInCategory;
}
}
List<Integer> values = dataArray.parallelStream().flatMap(Collection::stream).map(RiskyPersons::getNumberofPersonInCategory)
.collect(Collectors.toCollection(ArrayList::new));https://stackoverflow.com/questions/61494141
复制相似问题