gpt4 book ai didi

java - 删除数组字段(数组包含对象)

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

我正在尝试删除数组中的一个字段。该数组包含类型为 Person 的对象(Person 包含名字、姓氏、生日和 ID)。

我的目的是查找每个数组字段并将输入 ID 与所有数组字段进行比较。当我找到合适的时,我会将其设置为 null

但是我得到:

Exception in thread "main" java.lang.NullPointerException

我也不知道为什么。

public static void removePerson(Person[] container) {
TextIO.putln("Enter ID of person to be removed");
int index = TextIO.getInt();

for ( int i = 0 ; i < container.length ; i ++) {
if (container[i].id == index)
container[i] = null;
}
}

最佳答案

最有可能的情况是您的数组未满,因此一些容器数组条目为空,而 container[i].id 是触发空指针异常的原因。用

替换你的测试

if ((container[i] != null) && (container[i].id==index))

看看是否能解决您的问题。

关于java - 删除数组字段(数组包含对象),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21032423/

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