List<String> list = new ArrayList<String>();
list的数据
[615, FAULT_SYMPTOM, 1, 615, FAULT_SYMPTOM, 663, 615, FAULT_SYMPTOM, 821, 615, FAULT_SYMPTOM, 1160, 615, FAULT_SYMPTOM, 1161, 615, FAULT_SYMPTOM, 1162, 615, FAULT_SYMPTOM, 1220, 615, FAULT_SYMPTOM, 1241, 615, FAULT_SYMPTOM, 722, 615, FAULT_SYMPTOM, 880, 813, FAULT_SYMPTOM, 1, 813, FAULT_SYMPTOM, 663, 813, FAULT_SYMPTOM, 821, 813, FAULT_SYMPTOM, 1160, 813, FAULT_SYMPTOM, 1161, 813, FAULT_SYMPTOM, 1162, 813, FAULT_SYMPTOM, 1220, 813, FAULT_SYMPTOM, 1241, 813, FAULT_SYMPTOM, 722, 813, FAULT_SYMPTOM, 880, 834, FAULT_SYMPTOM, 1, 834, FAULT_SYMPTOM, 663, 834, FAULT_SYMPTOM, 821, 834, FAULT_SYMPTOM, 1160, 834, FAULT_SYMPTOM, 1161, 834, FAULT_SYMPTOM, 1162, 834, FAULT_SYMPTOM, 1220, 834, FAULT_SYMPTOM, 1241, 834, FAULT_SYMPTOM, 722, 834, FAULT_SYMPTOM, 880]
想把这数据转成下面类似的格式,就是3个一行的
615, FAULT_SYMPTOM, 1
615, FAULT_SYMPTOM, 663
......
求解决方法,谢谢!(基础不好,勿喷!)
你问题都不清楚,只是转成换行显示(每三个添加一个换行符)?还是?
控制台打印格式 还是String[]数组格式?
public static void main(String[] args) {
String a[]={"615", "FAULT_SYMPTOM", "1", "615", "FAULT_SYMPTOM", "615", "615", "FAULT_SYMPTOM", "615", "615", "FAULT_SYMPTOM", "615", "615", "FAULT_SYMPTOM"};
List<String> list=Arrays.asList(a);
for(int i=0;i<list.size()-3;i++){
System.out.println(list.get(i)+","+list.get(i+1)+","+list.get(i+2));
}
}
list不提供换行,如果想实现输出后显示成3个一行的话,可以循环输出,没输出三个元素,就输出一个换行符。
做一个循环,每当是三的倍数时,换行就可以了
int count = 0;
for(String str : list){
count ++;
System.out.print(str);
if(count %3 == 0){
System.out.println();
}
}
完美解决你的问题。
好办.思路:对字符串列表集合对3取余,从前到后,每3个数重新作为一个列表,加入到一个最终列表集resList中,实现如下
List<List<String>>resList=new ArrayList<List<String>>();
List<String>res=new ArrayList<String>();
for(int i=0;i<list.size();i++){
ifi(i%3==0){
resList.add(res);
res=new ArrayList<String>();
res.add(list[i])
}
else{
res.add(list[i]);
}
}
//结果集[[615, FAULT_SYMPTOM, 1],[615, FAULT_SYMPTOM, 1]... ....]
int length=list.size();
for(int i=0;i<length-3;i=i+3){
System.out.println(list.get(i)+","+list.get(i+1)+","+list.get(i+2));
}