[英]How to display on a textView all string values from an ArrayList
我有一个字符串,每秒接收不同的值。 我想将所有这些值存储到ArrayList中。 问题是,当我尝试显示所有值时,textView更新为最后一个值。 是否可以显示所有值?
我想显示以下值:500、400、300、200 ...
这是我的代码,
// that string receive a different value every second
// String values returns to me an integer
String values = stringbuilder.substring(item + 1, endOfLineIndex);
ArrayList<String> allvalues = new ArrayList<>();
allvalues.add(values);
for (int i = 0; i < allvalues.size(); i++) {
textView.setText(String.valueOf(allvalues));
}
一个解决办法是建立一个String
,其中包含所有的字符串,然后设置textView
了这一点。 就像这样:
StringBuilder sb = new StringBuilder();
for (int i = 0; i < allvalues.size(); i++) {
sb.append(allvalues.get(i) + ", ");
}
textView.setText(sb.toString());
根据评论更新
values
似乎已经包含您要显示的String
。 我不确定是否需要在Array
/ ArrayList
存储任何值。 这是一些可能对您有用的代码。
//Example values String based on OP's comments
String values = "100, 200, 300, 400, 500";
//If you need to store the values, this turns that String into a String[]
String[] valuesArray = values.split(", ");
//If you really want to store those values in an ArrayList instead of a regular Array, you can do this
ArrayList<String> valuesArrayList = new ArrayList<String>(Arrays.asList(valuesArray));
//Sets the textView to display the text, since values already reflects what you want to display
textView.setText(values);
您想用分隔符连接字符串列表吗? 是吗
也许您可以尝试类似的方法。
public static void main(String args[]) {
ArrayList<String> values = new ArrayList<>();
values.add("Hi");
values.add("how");
values.add("are");
values.add("you?");
values.add("i'm");
values.add("fine");
values.add("thanks :)");
System.out.println(String.join(" - ", values));
}
这段代码将输出:
你好你好吗? - 我很好谢谢 :)
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.