在應用程序中有以下格式的字符串:Java:有沒有更簡單的方法來解析字符串中的數組元素?
String elements =「[11,john,] [23,Adam,] [88,Angie,] ...」(...表示那裏是字符串中的更多元素)
從給定的字符串,我必須爲名稱(約翰,亞當,安吉,...)名稱ID(11,23,88,...)和ArrayList創建一個ArrayList。
我創建了兩個方法:
private int getItemID(int listLocation, String inputString){
int indexBeginning = inputString.indexOf("[", listLocation) + 1;
int indexEnd = inputString.indexOf(",", listLocation) - 1;
String sID = inputString.substring(indexBeginning, indexEnd);
int result = Integer.parseInt(sID);
return result;
}
private String getItemName(int listLocation, String inputString){
int indexBeginning = inputString.indexOf(" ", listLocation) + 1;
int indexEnd = inputString.indexOf(",", indexBeginning) - 1;
String result = inputString.substring(indexBeginning, indexEnd);
return result;
}
,並打算使用這兩種方法在方法parseArrayString(字符串inputString),我還沒有寫,但會工作方式如下:
private void parseCommunityList(String inputString){
int currentLocation = 0;
int itemsCount = count the number of "[" characters in the string
for(int i = 0; i < itemsCount; i++)
{
currentLocation = get the location of the (i)th character "[" in the string;
String name = getItemName(currentLocation, inputString);
int ID = getItemID(currentLocation, inputString);
nameArray.Add(name);
idArray,Add(ID);
}
}
我希望如果有人對你能提出任何簡單的方法來從給定的線二的ArrayList 。
謝謝!
我同意,儘管這並沒有真正回答這個問題。 – 2009-10-29 10:00:03
對象拒絕反模式的經典案例。 – 2009-10-29 10:01:28