我收到来自服务器的响应,并使用Gson将其反序列化为相应的对象。从服务器反序列化错误响应时的NPE
问题是,有时我得到一个错误响应(这是当然不是我期望的对象的类型),并导致NullPointerException。 我该如何处理这种情况?
我的代码是:
Response pollsResponse = okHttpClient.newCall(pollsRequest).execute();
String pollsResponseString = pollsResponse.body().string();
// Gson Type for List of Poll.class oObjects
Type listType = new TypeToken<ArrayList<Poll>>() { }.getType();
pollsList = gson.fromJson(pollsResponseString, listType);
当有一个错误的代码最后一行给NPE。我要如何检查项目是不是ArrayList<Poll>
类型,所以我不会反序列化它?
编辑:我不明白为什么我的问题是相似的链接?我知道什么是NPE。我不知道如何处理我不希望从网络电话导致NPE的结果。纠正我,如果我错了。
可能重复[什么是NullPointerException,以及如何解决它?](http://stackoverflow.com/questions/218384/what-is-a-nullpointerexception-and-how-doi-i-fix -it) – 2016-06-08 13:54:09