1 回答
TA贡献1828条经验 获得超3个赞
假设您需要以下矩阵:
Vegetable1 | Fruit1, Fruit2, Fruit3
Vegetable2 | Fruit1, Fruit2, Fruit3
Vegetable3 | Fruit1, Fruit2, Fruit3
Vegetable4 | Fruit1, Fruit2, Fruit3
您可以使用以下代码使用ArrayLists 进行所有比较:
List<String> vegetables = new ArrayList<>(); // Fill the lists somehow
List<String> fruits = new ArrayList<>();
for(String vegetable : vegetables) {
for(String fruit : fruits) {
System.out.printf("Compare %s to %s%n", vegetable, fruit);
}
}
如果这就是您想要的,您就不需要嵌套列表。如果您真的想拥有一个矩阵,那么您需要对代码稍作修改:
List<String> vegetables = new ArrayList<>(); // Fill the lists somehow
List<String> fruits = new ArrayList<>();
List<List<String>> matrix = new ArrayList<>();
for(String vegetable : vegetables) {
List<String> row = new ArrayList<String>();
row.add(vegetable);
for(String fruit : fruits) {
row.add(fruit);
}
matrix.add(row);
}
这将创建包含项目的行,VegetableN, Fruit1, Fruit2, Fruit3其中 N 是蔬菜行的编号。
添加回答
举报