Java 整数数组列表到字符串的转换
声明:本页面是StackOverFlow热门问题的中英对照翻译,遵循CC BY-SA 4.0协议,如果您需要使用它,必须同样遵循CC BY-SA许可,注明原文地址和作者信息,同时你必须将它归于原作者(不是我):StackOverFlow
原文地址: http://stackoverflow.com/questions/21412933/
Warning: these are provided under cc-by-sa 4.0 license. You are free to use/share it, But you must attribute it to the original authors (not me):
StackOverFlow
Conversion of Integer Arraylist to string
提问by HymanAttack
I'm trying to convert the numbers of my Array list into Strings at point i. How do I do this so I can create substrings of my numbers?
我正在尝试将我的数组列表的数字转换为第 i 点的字符串。我该怎么做才能创建数字的子字符串?
ArrayList<Integer> numbers= new ArrayList<Integer>();
for( int i=0; i<=10; i++){
String numbersString[i] = String.valueOf(numbers[i]);
}
采纳答案by C.B.
If numbers[i]
is of type Integer
you can just use its built in toString()
method. However, as numbers
is an ArrayList
, you need to use numbers.get(i)
.
如果numbers[i]
是类型,Integer
您可以使用其内置toString()
方法。然而,由于numbers
是ArrayList
,你需要使用numbers.get(i)
。
String numbersString[i] = ...
is invalid syntax. You have to declare your array outside the loop and then access it simply by numbersString[i] = ...
inside the loop.
String numbersString[i] = ...
是无效的语法。您必须在循环外声明数组,然后numbersString[i] = ...
在循环内简单地访问它。
回答by Kartik
I would suggest something like this.
我会建议这样的事情。
StringBuilder sb = new StringBuilder();
for (Integer number : numbers) {
sb.append(number != null ? number.toString() : "");
}
System.out.println("The number string = " + sb.toString());
回答by Murillo Maia
Looking your code you need a input of ArrayList and output of String[].
查看您的代码,您需要 ArrayList 的输入和 String[] 的输出。
You can use Collections2 of Guava lib to transform to string and after parse to array.
您可以使用 Guava lib 的 Collections2 转换为字符串,然后解析为数组。
ArrayList<Integer> numbers = new ArrayList<Integer>();
Collection<String> transform = Collections2.transform(numbers, new Function<Integer, String>() {
@Override
@Nullable
public String apply(@Nullable Integer input) {
return input.toString();
}
});
final String[] array = transform.toArray(new String[transform.size()]);