android - 如果 ("a"== "a") 不工作

标签 android if-statement

<分区>

public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.beta);

    ed_code = (EditText) findViewById(R.id.et_beta_01);
    bu_ok = (Button) findViewById(R.id.bu_beta);

    bu_ok.setOnClickListener(new OnClickListener() {    
        @Override
        public void onClick(View v) {
                // TODO Auto-generated method stub
            String code = ed_code.getText().toString();
            String target = "vsi8";

            Log.v(TAG, code+"="+target);

            if(code == target){
                    Intent intent = new Intent(BetaCheck.this, AppMenu.class);
                startActivity(intent);
            }
            else {
                    Toast.makeText(getApplicationContext(), "wrong", Toast.LENGTH_SHORT).show();
                    ed_code.setText("");
            }
        }
    });
}

似乎 if 语句不理解这 2 个值是相等的。

感谢帮助

最佳答案

字符串,应该使用 .equals 而不是 == 进行比较。 (== 检查引用相等性 而不是内容相等性。)

也就是改变

if(code == target)

if(code.equals(target))

相关问题:

关于android - 如果 ("a"== "a") 不工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6071691/

相关文章:

java - 访问自定义组件的 AttributeSet 中的属性

java - 实现 ListView 的上下文菜单?

php echo 在 elseif 之后不起作用

java - 否则没有 if - android studio/java

Bash:如果然后声明多个条件

android - react native : package parse error

java - 房间数据库查询

android - RxJava (Android) - 保持调度程序存活有什么坏处吗?

Apache 'if' 指令中的正则表达式...这里出了什么问题?

javascript - 如果 (#formID) 的值大于 100000,则显示此 Div