heart_2015
DYanchao2015
采纳率50%
2015-01-21 06:32 阅读 13.5k
已采纳

Map下写getget(key).toString();出现空指针异常

最近在编写android程序
源码是这样的:
child5 = new ArrayList>();
childData5 = new HashMap();
childData5.put("health_person_txt_smoking", person.getFlag_smoking());// 同理
childData5.put("health_person_txt_smokingnum", smokingnum);// 同理
childData5.put("health_person_txt_drink", person.getFlag_drink());
childData5.put("health_person_txt_drinknum", drinknum);
childData5.put("health_person_txt_training", person.getFlag_training());// 同理
childData5.put("health_person_txt_trainingnum", trainingnum);// 同理
childData5.put("health_person_txt_sleep", person.getFlag_sleep());
childData5.put("health_person_txt_sleepnum", sleepnum);
child5.add(childData5);
在下面直接编写map.get(key).tostring空指针异常。。。
//这样直接写get(key).toString();出现空指针异常该如何编写这段代码
String name=(String)childData1.get(health_person_txt_name).toString();
String sex=(String)childData1.get(health_person_txt_sex).toString();
String birthday_string=(String)childData1.get(health_person_txt_birthday).toString();
String blood=(String)childData1.get(health_person_txt_blood).toString();
String insurance=(String)childData1.get(health_person_txt_insurance).toString();

正确的编写方式什么???求各位老师帮忙解答

  • 点赞
  • 写回答
  • 关注问题
  • 收藏
  • 复制链接分享

3条回答 默认 最新

  • 已采纳
    wlwlwlwl015 小灯光环 2015-01-21 06:36

    肯定是你getXXX返回了一个NULL,就没有得到对象,再toString肯定会报null pointer了,你可以在toString之前判断一下对象是否为空,不要写成链式就行了。

    点赞 4 评论 复制链接分享
  • oyljerry oyljerry 2015-01-21 07:04

    get的是个空值吧,没有对应的key在map中

    点赞 1 评论 复制链接分享
  • heart_2015 DYanchao2015 2015-01-21 06:38

    也就是说这样用get(Key)的获取值的方式正确的是嘛???

    点赞 评论 复制链接分享

相关推荐