碼農們
String.split 這個方法很好用
但是
人生就是有這個但是
以下字串
"A|B|C|D"
會切出 ["A","B","C","D"]
"A||C|D"
會切出 ["A", ,"C","D"]
"A||C|"
會 java.lang.ArrayIndexOutOfBoundsException: 3
處理方法請參考
String Rstr= "A||C|";
StringBuffer sb = new StringBuffer();
List<String> strArr = new ArrayList<String>();
for (int i=0;i<Rstr.length();i++){
if(Rstr.charAt(i) == '|') {
//System.out.print("\n");
strArr.add(sb.toString());
//sb = new StringBuffer();
sb.delete(0, sb.length());
} else {
//System.out.print(Rstr.charAt(i));
sb.append(Rstr.charAt(i));
}
}
strArr.add(sb.toString());
sb.delete(0, sb.length());
String[] arrayStr = new String[strArr.size()];
arrayStr = strArr.toArray(arrayStr);
System.out.println(arrayStr[0]);
System.out.println(arrayStr[1]);
System.out.println(arrayStr[2]);
System.out.println(arrayStr[3]);