关闭

android 项目中的非空判断

750人阅读 评论(0) 收藏 举报
分类:

     看这个之前,我们先要理解下什么是空指针异常,所谓的空指针异常,就是一个指针是空指针,你还要去操作它,既然它指向的是空对象,它就不能使用这个对象的方法或成员变量,当我们在java中如果一个引用变量指向的是空,当我们访问它的成员变量或者方法时,java系统就会报NullPointerException。

    比如Person person=null;Person 对象中有个eat()方法,当我们访问person.eat()时,就会NullPointerException。

如下,我们先定义一个People 

public class People {
    public String name;

    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }
    public void eat()
    {
        System.out.println("People在吃");
    }
}
再定义个测试类
NullPointerTest

public class NullPointerTest {
    ArrayList<People> list = new ArrayList<People>();

  
    public void point() {
        People people;
        people = list.get(0);
        System.out.println(people.name);
    }

    public NullPointerTest() {
        initData();
    }

    public static void main(String[] args) {
        NullPointerTest nullPointerTest = new NullPointerTest();
        nullPointerTest.point();
    }

    private void initData() {
        for (int i = 0; i < 10; i++) {
            list.add(null);
        }
    }
}
当访问people.name时,系统就会报NullPointerException。
     在android 项目中我们加非空判断的作用就是为了避免出现空指针异常。比如从本地取数据时和取服务端获取到的数据时要进行非空判断,

为了避免取数据的时候,我们代码写对了,但是数据如果是空的,会报空指针异常,然后项目挂掉用的

本地数据源中取得,比如file文件,本地数据库,sd卡。




   
1
0

查看评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场
    个人资料
    • 访问:24205次
    • 积分:466
    • 等级:
    • 排名:千里之外
    • 原创:22篇
    • 转载:2篇
    • 译文:0篇
    • 评论:5条
    文章分类
    最新评论