围绕Integervs int在Java中进行了讨论.前者的默认值是null后者的默认值0.Booleanvs boolean?怎么样?
我的应用程序中的变量可以有0/ 1值.我想使用boolean/ Boolean而不想使用int.我可以使用Boolean/ boolean代替吗?
从Java 5开始,我们已经对原始类型进行了装箱/拆箱,因此它int被包装成java.lang.Integer等等.
我最近看到了很多新的Java项目(肯定需要一个至少版本为5的JRE,如果不是6个),int而不是java.lang.Integer使用后者,尽管使用后者要方便得多,因为它有一些帮助方法可以转换到long的值等.
为什么有些人仍然在Java中使用原始类型?有什么实际好处吗?
下面两行:
Boolean visitedAlphabet[] = new Boolean[26];
Arrays.stream(visitedAlphabet).anyMatch(e -> e != true);
Run Code Online (Sandbox Code Playgroud)
产生一个空指针,具体是第二行:
Exception in thread "main" java.lang.NullPointerException: Cannot invoke "java.lang.Boolean.booleanValue()" because "<parameter1>" is null
Run Code Online (Sandbox Code Playgroud)
你能告诉我为什么会发生这种情况吗?