java - Java中如何检查对象是否为null?

标签 java exception null

检查职位是否被占用的最佳方法是什么?我认为我不应该使用“this==null”...

class Cell {
    int column;
    int row;
    char letter;

    public Cell(int column, int row, char letter) {
        super();
        this.column = column;
        this.row = row;
        this.letter = letter;
    }

    public boolean isEmpty() {
        if (this==null) return true;
        else return false;
    }
}

最佳答案

我假设 char 是您的 Cell 的内容,并且您想要检查该内容是否为 null

首先,this 永远不能为 nullthis 是当前对象,因此始终存在。

您正在使用char - 因为这是一个基元,也不能为null。将其更改为对象包装器并检查 null

class Cell {

    int column;
    int row;
    Character letter;

    public Cell(int column, int row, Character letter) {
        this.column = column;
        this.row = row;
        this.letter = letter;
    }

    public boolean isEmpty() {
        return letter == null;
    }
}

另一个注意事项是,默认情况下总是调用父类(super class)构造函数,没有理由调用 super()

关于java - Java中如何检查对象是否为null?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15800738/

相关文章:

java - 既然Interface不能继承Class,那么 "Object"类方法在java中如何提供给接口(interface)引用呢?

python - 如何捕获尚未完全导入的模块的异常?

mysql - 结合 CONCAT() 和 COALESCE() 在 MySQL 中生成 JSON

javascript - JS IE8,7,9 错误 'attr(..)' is null or not an object

java - ArrayLists 无法正确添加值?

java - Google 应用引擎终止实例启动

android - 无效的用户数据异常 - Android

swift - NSNumberFormatter.stringFromNumber 会返回 nil 吗?

java - 在客户端 Spring Boot 应用程序上配置自定义 OAuth2AccessToken

java - 在不同线程中抛出的异常会导致主线程崩溃吗?