И снова здравствуйте!
Опять загадки преподносит Java по неопытности...
Есть JSON:
{
"data": {
"task_1": {
"name": "task_1"
},
"task_2": {
"name": "task_2"
},
"task_3": {
"name": "task_3"
},
"task_4": {
"name": "task_4"
}
}
}
Есть код, который обрабатывает этот JSON выводит ключи объектов на экран:
String jsonStr = "{\"data\":{\"task_1\":{\"name\":\"task_1\"},\"task_2\":{\"name\":\"task_2\"},\"task_3\":{\"name\": \"task_3\"},\"task_4\":{\"name\": \"task_4\"}}}";
try {
JSONObject jsonObject = new JSONObject(jsonStr);
JSONObject data = jsonObject.getJSONObject("data");
Iterator i = data.keys();
while (i.hasNext()){
String objName = i.next().toString();
Log.d(TAG + ":JSON_TEST:", objName);
}
} catch (JSONException e) {
Log.d(TAG + ":JSON_TEST:", e.getMessage());
}
Вопрос: почему при выводе ключи перемешались и вывелись не так, как они стоят в JSON?
P.S.: к сожалению, код на ideone.com запустить не смог, там не поддерживается
import org.json.JSONObject;
Ответ
Потому что: A JSONObject is an unordered collection of name/value pairs Ищите ответы на подобные вопросы в документации. В частности для JSONObject
Комментариев нет:
Отправить комментарий