我有一个数组

String [] array = account.getDetails().split(',');

帐户明细有时为空,如何避免出现异常?

我做了类似的事情,但是那并不漂亮。

if (account.getDetails() == null)
{
   account.setDetails("");
}

String[] array = account.getDetails().split(',');


这样可以避免抛出NullPointerException,这还可以吗?还是有更好的方法?

最佳答案

如果您正在寻找一种“更漂亮”的方式,那么这个地方似乎很适合“?”运算符(称为三元运算符)

String[] array = account.getDetails() == null? new String[]{""} : account.getDetails().split(",");


您还可以更改getter或setter / constructor,以使getDetails()方法从不返回null(因为它不会或根本不具有null)。

public String getDetails() {
    return details == null? "" : details;
}

07-24 22:29