Java String比较错误的结果

Bla*_*gic -7 java string comparison android

我试图根据EditTexts实际更改来启用/禁用"保存"按钮,但我的字符串比较根本不起作用.

public void afterTextChanged(Editable editable) {
    String newSet = editable.toString();

    newSet = newSet.trim();
    if(!newSet.equals(ip) || !newSet.equals(port) || !newSet.equals(username) || !newSet.equals(password)){
        saveButton.setEnabled(true);
    }else{
        saveButton.setEnabled(false);
    }
}
Run Code Online (Sandbox Code Playgroud)

它一直告诉我字符串是不同的,即使它们不是.即使我打印出来,我也会得到完全相同的String.

谁能帮我?

谢谢

Dmi*_*nko 6

可能你想要&&而不是||:

public void afterTextChanged(Editable editable) {
  String newSet = editable.toString().trim();

  saveButton.setEnabled(!newSet.equals(ip) && 
                        !newSet.equals(port) && 
                        !newSet.equals(username) && 
                        !newSet.equals(password)); 
}
Run Code Online (Sandbox Code Playgroud)

saveButton如果newSet 不是 ip,端口,用户名或密码,启用