我有一个json流,可以像这样:
{"intervention":
{
"id":"3",
"subject":"dddd",
"details":"dddd",
"beginDate":"2012-03-08T00:00:00+01:00",
"endDate":"2012-03-18T00:00:00+01:00",
"campus":
{
"id":"2",
"name":"paris"
}
}
}
或类似的东西
{"intervention":
[{
"id":"1",
"subject":"android",
"details":"test",
"beginDate":"2012-03-26T00:00:00+02:00",
"endDate":"2012-04-09T00:00:00+02:00",
"campus":{
"id":"1",
"name":"lille"
}
},
{
"id":"2",
"subject":"lozlzozlo",
"details":"xxx",
"beginDate":"2012-03-14T00:00:00+01:00",
"endDate":"2012-03-18T00:00:00+01:00",
"campus":{
"id":"1",
"name":"lille"
}
}]
}
在我的Java代码中,请执行以下操作:
JSONObject json = RestManager.getJSONfromURL(myuri); // retrieve the entire json stream
JSONArray interventionJsonArray = json.getJSONArray("intervention");
在第一种情况下,上述方法不起作用,因为流中只有一个元素。如何检查流是an object
还是an array
?
我尝试过,json.length()
但是没有用。
谢谢
这样的事情应该做到:
JSONObject json;
Object intervention;
JSONArray interventionJsonArray;
JSONObject interventionObject;
json = RestManager.getJSONfromURL(myuri); // retrieve the entire json stream
Object intervention = json.get("intervention");
if (intervention instanceof JSONArray) {
// It's an array
interventionJsonArray = (JSONArray)intervention;
}
else if (intervention instanceof JSONObject) {
// It's an object
interventionObject = (JSONObject)intervention;
}
else {
// It's something else, like a string or number
}
这样做的好处是,JSONObject
只需从一次获取属性值。由于获取属性值涉及遍历哈希树或类似的树,因此对于性能(价值而言)很有用。
问题内容: 我将从服务器接收JSON对象或数组,但是我不知道它将是什么。我需要使用JSON,但是要这样做,我需要知道它是对象还是数组。 我正在使用Android。 有没有人有这样做的好方法? 问题答案: 我找到了更好的方法来确定: tokenizer可以返回更多类型:http : //developer.android.com/reference/org/json/JSONTokener.html
问题内容: 我决定使用非常简单的算法创建简单的 isEven 和 isOdd 函数: 如果n具有某些参数,那是可以的,但是在许多情况下会失败。因此,我着手创建健壮的函数,以便在尽可能多的情况下提供正确的结果,以便仅测试javascript数字范围内的整数,其他所有结果均返回false(包括+和-无限)。注意零是偶数。 谁能看到上述任何问题?是否有更好的版本(即更准确,更快或更简洁而不被混淆)? 有
问题内容: 找出数字/变量在PHP中是奇数还是偶数的最简单,最基本的方法是什么?与mod有关吗? 我已经尝试了一些脚本,但是.. google目前无法交付。 问题答案: 您认为mod是一个不错的起点是正确的。这是一个表达式,如果是偶数则返回true,如果是奇数则返回false: 例: 输出: 甚至
我知道我做错了什么,因为这很奇怪,我学习PHPUnit已经有几天了。测试主题是控制器操作: 当控制器抛出事件时,我需要模拟一个事件订阅服务器(实现)。有一个静态方法。测试方法帮助程序(获取模拟):
Spring对MockMvc有2个设置: 独立设置 WebApplication Context安装 一般来说,MockMvc用于哪种测试?单元还是集成?或者两者兼而有之? 使用独立设置(运行在Spring应用程序上下文之外)允许您编写单元测试,而使用WebApplication Context设置您可以编写集成测试,这是对的吗?