问答详情
源自:5-2 学生选课---使用 Map 添加学生

空指针异常

在输出成功添加学生时后面跟的为什么是students.get(ID).name,前面有个Student st=students.get(id); 为什么不能用st.name呢?试了如果用st.name的话会出现空指针异常。为啥呀?

提问者:嗨喽嗨喽 2017-07-27 17:06

个回答

  • 慕粉1543407295
    2017-07-27 18:39:20
    已采纳

    因为if判断里面(st==null),只有在st为空时,代表Student类里没有占用此ID,此时才可以继续设置name。所以不能用st.name。

  • IE游荡者
    2017-10-06 10:36:15

    因为中间有一句students.put(ID, new Student(ID, name));前后两个st不一样