2014-07-09 24 views
0

我需要編寫一個JSON方法,該方法將接收一個表示整數數組的JSON字符串(例如「[100,500,300,200,400]」),並將返回包含JSON數組字符串中整數的整數的ArrayList。編寫一個JSON方法,該方法將接收表示整數數組的JSON字符串,從數組中返回整數的Arraylist?

我有點失望,但我仍然有麻煩。我是否應該做一個循環?

ArrayList<Integer> ListInt; 
public ArrayList<Integer> createArrayListofIntegersFromJSONString(String jsonString) throws JSONException { 
     for (int i = 0; i < jsonString.size(); i++) { 
      ArrayList[i] = jsonString[i]; 
    return ArrayList; 
    } 
+0

無論是'ArrayList'或'String'是數組,那麼「訪問使用指數」概念如何形成?此外,您將需要一個JSON解析器,它將將JSON字符串解析爲可以轉換爲ArrayList的東西(可能是JSON數組)。 – SudoRahul

回答

0

你可以使用像傑克遜或Gson的圖書館,最好是你在做什麼。無論如何,如果你不關心輸入驗證之類的,你可以嘗試使用正則表達式:

private static final Pattern numberPattern = Pattern.compile("(\\d+)"); 

public static List<Integer> list(String pseudoJson) { 
    Matcher matcher = numberPattern.matcher(pseudoJson); 
    List<Integer> list = new ArrayList<>(); 
    while(matcher.find()) { 
     list.add(Integer.valueOf(matcher.group(1))); 
    } 
    return list; 
} 

測試:

public static void main(String[] args) throws Exception { 

    String json = "[ 100, 500, 300, 200, 400 ]"; 

    System.out.println(">>>" + list(json)); 
} 
相關問題