我可以通过编程方式将TextView的xml文本与另一个字符串进行比较吗?

时间:2015-02-10 03:23:16

标签: java xml textview

如果我在XML中设置TextView的文本,如下所示:

    <TextView
        ...
        android:text="0" />

我可以在Java中比较该字符串吗?这样做:

    private void InitializeMethod() {
        A_1  = tv_1.getText().toString();
    }

    private void CheckAnsMethod() {
        if (A_1 == "0"){
            correctAns.start();
            }
        }else{
            wrongAns.start();
        }
    }

导致声音'wrongAns.mp3'被播放......

1 个答案:

答案 0 :(得分:1)

您需要使用String类的equals()方法:

 if ( "0".equals(A_1) )

"0" == A_1将比较指向String对象所在位置的引用值。换句话说,当你真的想要比较字符串中的字符时,它会比较内存地址。 String类的equals()方法实际上将逐个字符地比较字符串,以检查它们是否相等。

此外,我使用"0".equals(A_1)而不是A_1.equals("0")的原因是因为A_1因任何原因而null "0".equals(A_1)NullPointerException将不会{ {1}}。