java 泛型函数需要返回Integer 我返回null 为啥报空指针异常
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java 泛型函数需要返回Integer 我返回null 为啥报空指针异常相关的知识,希望对你有一定的参考价值。
java 泛型函数需要返回Integer 我返回null 为什么报空指针异常
Integer 和 int 有一个 autoboxing的特性我猜测是 因为你返回了 null。 而用到你这个返回值的时候 编译器会自动 转换成int。结果就报了空指针异常。可以看看 Integer的 源代码。 里面应该有涉及到 autoboxing 转换的方法。 参考技术A 代码发上来,
还有如果是报NullPointerException异常,那就说明你的某个方法中写明了if (... == null) throw new NullPointerException();。
还有我不同意Zoujy1022的说法,因为如果泛型Integer是null的话,转换成int应该默认为0,而不会报错。 参考技术B Integer默认为0,要返回是Integer类型的,你返回null就和声明一个变量初始化值给null重复了,。望采纳本回答被提问者采纳 参考技术C 这个肯定错啊,,Integer初始化的默认值是0,要返回类型死Integer类型的,你返回null就和声明一个变量初始化值给null一样的性质了, 参考技术D 问题描述不清,别人无法回答,描述问题的方式是:先说概要现象,然后给出发生问题的代码,然后详细描述发生问题的过程,给出异常的详细信息!
以上是关于java 泛型函数需要返回Integer 我返回null 为啥报空指针异常的主要内容,如果未能解决你的问题,请参考以下文章