【发布时间】:2012-10-04 14:48:26
【问题描述】:
我正在使用 JSON-Simple 以 JSON 格式提取推文。我将用户对象拆分为它自己的 JSONObject 类,在内存中:
incomingUser = (JSONObject) incomingTweet.get("user");
然后我使用 JSON-Simple 从推文和用户对象中剥离各种字段;我在做
strippedJSON.put("userLocation", incomingUser.get("location").toString();
但事实证明,有时用户的位置设置为null。
所以现在我正在检查我要剥离的字段是否为空,并将其设置为“”:
strippedJSON.put("userLocation", (incomingUser.get("location").toString().equals(null)?
"": incomingUser.get("location").toString());
但我已经在调试模式下通过 Eclipse 并发现有人的位置设置为 null,并跳过了我剥离与 "location" 关联的 JSON 对象字段并将其放入 JSON 对象字段 @ 的部分987654326@。我得到了一个 NPE。
我的三元语句没有说明这一点吗?虽然它会检查它是否等于 null(只有一个“空对象”它应该能够看到指针是相同的)如果它是(condtion? 是真的)它应该评估为@ 987654328@没有?
我哪里错了?我应该怎么做来处理这个空值?
【问题讨论】:
标签: java nullpointerexception ternary-operator json-simple