java - 无法在 Java 中检查 null
问题描述
我写了这段代码,但我不明白为什么我不能检查数组中的空值。
public static int[] maxArr(int[] a, int[] b) {
int[] newArray = new int[Math.max(a.length, b.length)];
int min = Math.min(a.length, b.length);
for (int i = 0; i < min; i++) {
if (a[i] >= b[i]) {
newArray[i]=a[i];
} else {
newArray[i]=b[i];
}
}
for (int j = min; j < newArray.length; j++) {
if (b[min] == null) {
newArray[j] = a[j];
}
else {
newArray[j] = b[j];
}
}
return newArray;
}
这是错误:
error: bad operand types for binary operator '=='
if (b[min] == null) {
^
first type: int
second type: <null>
1 error
我是编程新手,所以提前谢谢
解决方案
你有原始类型的数组int
。原语永远不会null
有价值。默认情况下int
,变量将0
被赋值。您可能需要切换到包装类Integer
才能null
用于检查未初始化的值。
推荐阅读
- sql - 从列的每一行中提取部分字符串
- c# - 如何将 C# 字典输出为 C# 代码?
- java - 当我们使用自定义哈希函数时,Java HashTable 是否遵守负载因子(我们指定)?
- elasticsearch - logstash 时间表 - 是否可以延长时间,以便时间表不会在每分钟的第 1 秒开始?
- android - Android Intent Chooser - 按包名称填充应用列表
- php - Foreach json 输出并存储在变量中
- python-3.x - 无法销毁由 tkinter 中的函数创建的小部件
- c# - Xander.UI.pdb 未加载
- java - 如何在 Spring MVC 中修复“XmlFileNotFound”
- javascript - 如何根据另一个对象数组查找对象数组?