【发布时间】:2018-02-09 19:06:50
【问题描述】:
在我的应用程序中,我使用的是 EditText。当编辑文本中没有文本时,我想分配 numberOfYearsBirthday=0。
我已经尝试了以下代码并进行了调试。我已经看到,即使我的 charSequence="" 但它会忽略该语句并移至 else 语句,从而导致错误并使我的应用程序崩溃并将空值分配为整数。
xB1.addTextChangedListener(new TextWatcher(){
@Override
public void onTextChanged(CharSequence charSequence, int start, int before, int count) {
if(String.valueOf(charSequence)==null){
numberOfYearsBirthday=0;
}else{numberOfYearsBirthday= Integer.valueOf(charSequence.toString());
}
我也试过下面的代码
charSequence.toString()==""
另外,下面还有一个
charSequence ==""
但程序忽略了我的 if 语句。我在这里做错了什么?
【问题讨论】:
-
if( charSequence == null || charSequence.length() == 0 ){..} -
为什么我需要使用“charSequence == null”?
-
因为根据您的问题,
charSequence也可能为空。 -
String.valueOf()不返回空值。如果您想检查charSequence是否为空,请使用==运算符将其比较 为空。
标签: java android null charsequence