当前位置: 首页 > 知识库问答 >
问题:

NullPointerException即使对象不为null

包德业
2023-03-14
JSONParser parser=new JSONParser();
URL url=new URL("http://api.yummly.com/v1/api/recipes?q="+
URLEncoder.encode(dish,"UTF-       8")+"&_app_id=APP_ID8&_app_key=APP_KEY");
HttpURLConnection conn=(HttpURLConnection)url.openConnection();
BufferedReader br=new BufferedReader(new InputStreamReader(conn.getInputStream()));
Object json=parser.parse(br);
JSONObject obj=(JSONObject)json;
if(obj!=null)
 count=(long)obj.get("totalMatchCount"); <--- Exception at this point

此语句在循环中运行,并在随机迭代时给出NullPointerException。

共有1个答案

左劲
2023-03-14

它告诉您obj.get(“totalmatchcount”)返回null,并将强制转换为long。

类似于

Object countObj;
if(obj!=null) 
   countObj = obj.get("totalMatchCount");
if (countObj != null)
 count=(long)countObj

现在为什么,是否以及是否应该为null,是另一个问题。

 类似资料:
  • 我有一段类似这样的代码: 我的测试是: 上面的代码不应该抛出NPE吗? 当我将测试更改为: 然后我的代码正确地抛出了一个空指针异常。 我的测试第一版和第二版有什么区别? 在我的第一个版本中,我告诉mockA返回mockB。但是我也将mockB设置为null,所以当调用b.doSomething()时,我认为该方法应该抛出一个空指针,因为它试图调用null.doSomething()。 我知道我应该

  • 对登录页面使用页面对象模型和页面分解,在登录页面中获取对象。java和操作在LoginScript中。JAVA我有一个java。“Ele_usernamedit.clear();”行中的lang.NullPointerException请帮助检查代码。谢谢 这是我的登录页。爪哇: 这是我的登录cript.java:

  • 下面的Java代码在创建新实例的行抛出。 行号。14是,下面是异常的堆栈跟踪:

  • 我试图将字符串分配给2D对象列表,但每次都遇到NullPointerException。2D对象列表是自定义表模型类的数据源,该类将其提供给JTable。源是一个2D字符串列表,它只由数据对组成,但是这两部分都是需要打印的字符串,所以映射不适合。我遍历源列表并设置表数据列表的值。 再往下是setValueAt方法 中的所有值 并且是非空的。

  • 我在运行时得到这个nullPointerException: 原因:java.lang.NullPointerException:试图对空对象引用调用虚拟方法“void android.app.actionbar.SetDisplayHomeasUpenabled(boolean)” 来自MainActivity的代码: 出现问题的代码行是: 我使用:style name=“AppTheme”pa

  • 在尝试通过扩展抽象类和测试类来创建测试时,我得到了NullPointerException。错误: java.lang.NullPoInterException(位于pages.userRegistrationPage.java:61)(位于userRegistrationPage.java:61)(位于sun.reflect.nativeMethodAccessorImpl.Invoke0(原生