Jan*_*Jan 4 java arrays string stringbuilder tostring
我经常遇到创建对象集合的String表示的任务.
例:
String[] collection = {"foo", "bar", "lorem", "dolar"};
Run Code Online (Sandbox Code Playgroud)
我要创建的表示:"foo,bar,lorem,dolar".
每当我遇到这个任务时,我都想知道哪种方法能够达到理想的效果.
我知道有很多方法可以获得所需的表示,但是例如我总是想知道,如果有可能通过使用for/each循环来创建字符串?
像这样:
StringBuilder builder = new StringBuilder();
for (String tag : list) {
builder.append(tag + ", ");
String representation = builder.toString();
// but now the String look like this: "foo, bar, lorem, dolar, " which nobody wants
Run Code Online (Sandbox Code Playgroud)
或者最好直接使用迭代器(如果有的话)?
假设list是一个集合(这就是它们在JDK中的表现方式):
Iterator<String> it = list.iterator();
while (it.hasNext()) {
sb.append(it.next());
if (!it.hasNext()) {
break;
}
sb.append(", ");
}
Run Code Online (Sandbox Code Playgroud)
当然,人们可以使用传统的for循环索引数组或执行许多其他操作.
将字符串列表转换为用逗号分隔每个元素的表示的最简单/最佳可读/最安全的方法是什么,并在开头或结尾处理边缘情况(意味着在第一个元素之前或之后没有逗号最后一个元素)?
归档时间: |
|
查看次数: |
607 次 |
最近记录: |