有时候为了方便数据的存储和传递等,需要把list
所以把方法记在博客里,方便自己查找。
list
迭代list的每个子项,将他们用“,”隔开,拼接最好是要用stringbuilder 或者stringbuffer
来完成,当然"string =" 也是可以的:
public static string listtostring(list list){
if(list==null){
return null;
}
stringbuilder result = new stringbuilder();
boolean first = true;
//第一个前面不拼接","
for(string string :list) {
if(first) {
first=false;
}else{
result.append(",");
}
result.append(string);
}
return result.tostring();
}
string 转换成list
首先string类没有提供直接转换出list的功能;
string提供了一个根据字符来分割字符串的功能,但是分割的结果是string[]类型的,如果我们需要的是string[]类型,那么正好直接使用,
需要list可以使用如下的方法:
private list stringtolist(string strs){
string str[] = strs.split(",");
return arrays.aslist(str);
}
网上找到一个更简洁的list
joiner.on(",").join(list);
如此我们来测试记录一下:
public static void main(string[] args) {
list name =new arraylist<>(arrays.aslist("xxx","yyy","zzz"));
name.add("aaa");
name.add("bbb");
string namestr = joiner.on(",").join(name);
system.out.println(namestr);//xxx,yyy,zzz,aaa,bbb
list dogs = new arraylist();
dogs.add("aigi");
dogs.add("spitz");
dogs.add("mastiff");
dogs.add("finnish spitz");
dogs.add("briard");
string dogstr = joiner.on(",").join(name);
system.out.println(dogstr);//aigi,spitz,mastiff,finnish spitz,briard
string str[] = dogstr.split(",");
system.out.println(arrays.aslist(str));//[aigi, spitz, mastiff, finnish spitz, briard]
}