scsqy 2022-03-17 16:02 采纳率: 71.4%
浏览 36
已结题

NullPointerException

package petShop;

import java.util.Collections;
import java.util.LinkedList;

//宠物商店
public class shop {
    //储存宠物信息
    private LinkedList pets = new LinkedList();

    //存进信息
    public void add(pet pet) {
        this.pets.add(pet);
//        this.sortlist();
    }

    //删除信息
    public void del(pet pet) {
        this.pets.remove(pet);
//        this.sortlist();
    }

    //查询信息(名字可能相同)
    public LinkedList searchinfo(String keyName) {
        LinkedList result = new LinkedList();
//        将集合转换成数组返回 因为集合保存的是Object
//        真正要的数据需要pet接口的getName方法发返回值
        Object obj[] = this.pets.toArray();//将pets转换成数组 看看数组是怎样的
        for (int i = 0; i < obj.length; i++) {//遍历整个数组查找对应数据
            pet p = (pet)obj[i];//向下转型
            if (p.getName().contains(keyName)){//就是这行出现空指针
                result.add(p);
            }
        }
        return result;
    }
}

在 if (p.getName().contains(keyName))出现空指针异常
Exception in thread "main" java.lang.NullPointerException
at petShop.shop.searchinfo(shop.java:38)
at petShop.shop_testmain.main(shop_testmain.java:42)

我的解答思路和尝试过的方法
我想要达到的结果
  • 写回答

3条回答 默认 最新

  • m0_37729339 2022-03-17 16:47
    关注

    img


    你这个pets是new出来的,也没有调用add方法赋值,第一个对象肯定是空的

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 3月25日
  • 已采纳回答 3月17日
  • 创建了问题 3月17日

悬赏问题

  • ¥170 如图所示配置eNSP
  • ¥20 docker里部署springboot项目,访问不到扬声器
  • ¥15 netty整合springboot之后自动重连失效
  • ¥15 悬赏!微信开发者工具报错,求帮改
  • ¥20 wireshark抓不到vlan
  • ¥20 关于#stm32#的问题:需要指导自动酸碱滴定仪的原理图程序代码及仿真
  • ¥20 设计一款异域新娘的视频相亲软件需要哪些技术支持
  • ¥15 stata安慰剂检验作图但是真实值不出现在图上
  • ¥15 c程序不知道为什么得不到结果
  • ¥15 键盘指令混乱情况下的启动盘系统重装