gpt4 book ai didi

android - 改造方法调用可能产生 'java.lang.NullPointerException'

转载 作者:塔克拉玛干 更新时间:2023-11-02 23:44:38 24 4
gpt4 key购买 nike

使用 Retrofit 2.3.0 我在 Android Studio 中收到以下消息

enter image description here

有关如何删除此 IDE 错误消息的任何建议。谢谢

最佳答案

来自Response documentation :

@Nullable
public T body()

The deserialized response body of a successful response.

这意味着 response.body() 可以返回 null,因此调用 response.body().getItems() 可以抛出一个 空指针异常。为避免出现警告消息,请在调用方法之前检查 response.body() != null

编辑

另一个问题的讨论表明,我上面的陈述并不像他们需要的那样清楚。如果原始代码是:

mAdapter.addItems(response.body().getItems());

它不会通过像这样包装在空检查中来解决:

if (response.body() != null) {
mAdapter.addItems(response.body().getItems());
}

linter(生成警告的东西)无法知道每个 response.body() 调用将返回相同的值,因此第二个仍然会被标记。使用局部变量来解决这个问题:

MyClass body = response.body();
if (body != null) {
mAdapter.addItems(body.getItems());
}

关于android - 改造方法调用可能产生 'java.lang.NullPointerException',我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45422911/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com