首页 > 解决方案 > 将列表存储到数组列表中的字符串

问题描述

我正在尝试显示来自的所有字符串内容,ArrayList但大小ArrayList未知(使用 Android Studio)。例如:

fruit = new ArrayList<>()
veg = new ArrayList<>()

经过一些操作,现在故事ArrayList包含了一些信息,例如:

fruit = {"apple", "orange", "banana", "peach",...};
veg = {"cucumber", "spinach", "pumpkin", "broccoli",...};

我不知道手术后多久ArrayList水果和蔬菜。但我知道水果和蔬菜的大小相同ArrayList。我想将每个列表存储为:

fruitOne = fruit(0), fruitTwo = fruit(1), fruitThree = fruit(2),...
vegOne = veg(0), vegTwo = veg(1), vegThree = veg(2),...

然后我想将它们一起显示为一个字符串,这样我就可以有一个字符串,例如:

String myStore = "I am selling" + fruitOne + " and " + vegOne + "/n" + fruitTwo + " and " + vegTwo + "/n" + fruitThree + " and " + vegThree"...;

我觉得它需要使用for循环通过调用来一一拉出每个列表fruit(0), fruit(1),...,fruit(i)。但是我如何fruit(0), fruit(1),...,fruit(i)独立存储这个列表中的每一个,以便我可以将它们连接在一起成为 myStore 的一个字符串?

所有教程都在使用 about printlnor logd,因此它可以打印fruit(i)or veg(i)each for 循环,但不能真正将fruit(i)orveg(i)作为变量存储以供独立使用。

谢谢您的帮助!

标签: javaandroidarraysarraylist

解决方案


我会用它StringBuilder来构建字符串。

由于两个列表具有相同数量的元素,因此使用一个简单的for循环来迭代两个列表。

List<String> fruit = Arrays.asList("apple", "orange", "banana", "peach");
List<String> veg = Arrays.asList("cucumber", "spinach", "pumpkin", "broccoli");
StringBuilder sb = new StringBuilder();
sb.append("I am selling ");
int count = fruit.size();
for (int i = 0; i < count; i++) {
    sb.append(fruit.get(i));
    sb.append(" and ");
    sb.append(veg.get(i));
    sb.append("\n");
}
System.out.println(sb);

运行上面的代码会产生以下字符串:

I am selling apple and cucumber
orange and spinach
banana and pumpkin
peach and broccoli

推荐阅读