0
的轉換I有三個陣列(在相同的大小):提高陣反射調用
JSONArray jsonArr
其中包含許多字符串。Class<?> classArr[]
其中包含參數類型。Object objArr[]
包含什麼,但(但我們會做滿了,我保證)
我需要每個字符串jsonArr從同一指數classArr轉換成的類型和將結果對象放在objArr的適當索引中。
例如:
Array \ index | 1 | 2 | 3 | 4
--------------+---------+---------+---------+-------
jsonArr | "1" | "false" | "false" | "2"
classArr | int | boolean | String | char
應導致:
objArr | 1 | false | "false" | 2
我目前使用下面的方法(在爲每個對象的循環)來轉換的參數和創建objArray
:
if (classArr[i].equals(int.class))
objArr[i] = Integer.parseInt(jsonArr.get(i));
else if (classArr[i].equals(boolean.class))
objArr[i] = Boolean.parseBoolean(jsonArr.get(i));
....
此方法適用於我,但我不知道 - 有沒有更好的方法將JSONArray轉換爲列表中的類型,或者我沒有比if-else
方法更好的選擇?
謝謝,我以前只用String-in-json-string工作,我完全忘記了這一點。在這個項目中,我遇到了這個問題並不重要 - 你提醒了我重要的一點。再次感謝! – MByD 2011-05-03 20:14:55
另外,現在你發現了,我覺得很愚蠢:) – MByD 2011-05-03 20:15:44