我有这段代码
JSONObject obj;
try {
obj = new JSONObject(readUrl("http://dleel.ps/ss.txt"));
List<String> list = new ArrayList<String>();
JSONArray array = obj.getJSONArray("data");
for(int i = 0 ; i < array.length() ; i++) {
if (array.getJSONObject(i).getString("link")!=null)
System.out.println(array.getJSONObject(i).getString("link"));
}
}
为什么我没有链接(JSONObject [“link”]未找到时会出现异常。),我应该在if条件中放入什么? 我尝试使用而不是getJSONArray,optJSONArray但是相同的
答案 0 :(得分:10)
如果找不到密钥,则getString()方法抛出异常。 而是使用has()方法:
if (array.getJSONObject(i).has("link"))
答案 1 :(得分:1)
要测试密钥是否存在,
array.getJSONObject(i).has("link")