将Arraylist附加到TextView

时间:2013-08-14 19:47:03

标签: java android arraylist textview

我正在尝试将Arraylist添加到文本视图但是在将其添加到TextView时会出错 Arraylist宣言是:

    ArrayList<Integer> a=new ArrayList<Integer>();


    1.       int arraylistSize = a.size();

    2.       for(int i = 0; i < arraylistSize; i++){

    3.  textview1.setText(a[i]);

    4.  textview1.setText("*");

在第3行,它给出了“表达式的类型必须是数组类型,但它已解析为ArrayList”

5 个答案:

答案 0 :(得分:4)

textview1.setText(a [i]); =&GT; textview1.setText(a.get(I));

或类似的东西:

for(Integer i : a) textview1.setText(i);

我不知道这将产生任何类型的所需功能,第4行将覆盖第3行,第3行的每次迭代都将覆盖前一个。循环执行后,你将在textview1中得到*。

答案 1 :(得分:3)

您将需要使用ArrayList的get(index)操作。即a.get(i)。

如果您希望看到1 * 2 * 3 * 4 ..等...在textview中打印为文本。您需要将所有这些整数附加到一个字符串中。例如:

String s = "";
for (int i = 0; i < a.size(); i++) {
     s += a.get(i) + "*";
}
textview1.setText(s);

答案 2 :(得分:0)

您可以使用append

中的textview方法
for (int i=0;i<a.size();i++){
textview1.append(a.get(i) + "*");
}

答案 3 :(得分:0)

ArrayList<Integer> a = new ArrayList<Integer>();
for(String i : a)
   textview1.append(i + "\n\n");

答案 4 :(得分:-1)

您可以使用short hand method迭代列表:

ArrayList<Integer> a = new ArrayList<Integer>();
for (Integer i : a) {
    textview1.setText(Integer.toString(i) + "*");
}