Java Android equalsIgnoreCase无法正常工作

Java Android equalsIgnoreCase无法正常工作,java,android,string,equals,Java,Android,String,Equals,temp1是“会计”编辑文本是“会计” 但我用String.length()进行了检查 temp1是一个包含11个字符的字符串,editText包含10个字符 我尝试了trim()方法,再次得到了相同的结果 代码示例: if(temp1.equalsIgnoreCase(editText1.getText().toString().trim())) { //do someting } 我解决了 我用“Notepad++”将源文件转换为UTF

temp1是“会计”编辑文本是“会计”

但我用String.length()进行了检查

  • temp1是一个包含11个字符的字符串,editText包含10个字符
我尝试了trim()方法,再次得到了相同的结果

代码示例:

    if(temp1.equalsIgnoreCase(editText1.getText().toString().trim()))
      {
        //do someting
      }
我解决了

  • 我用“Notepad++”将源文件转换为UTF-8,并从新的源文件中获取单词。EqualsIgnoreCase现在可以工作了

由于
temp1
是一个字符串,有11个字符,因此您必须在单词accountary之后放置一个空格。(要么就是你拼错了这个词。)会计只有10个字符长,所以必须有空格。(好吧,这很有保证,因为是你自己创造的。)

在比较之前,请删除
temp1
中的空白,或修剪
temp1

另外,再次检查
temp1
,以确保单词拼写正确。

您可以尝试以下代码:

    //put this below public class activity

    int index=0; 
    String [] answer ={"Accountant"};
并将此按钮代码放在setContentView下面

buttonanswer = (Button)findViewById(R.id.yourbutton);
buttonanswer.setOnClickListener(this);
然后把这个代码

    @Override
    public void onClick(View v) {               

    edittextanswer=(EditText)findViewById(R.id.youreditText); 
    if(v==buttonanswer) {

        String myanswer=edittextanswer.getText().toString();              
        if(myanswer.equalsIgnoreCase(answer[index]))
        {
            //do someting
        }
        else
        {    
           //do someting
        }

检查temp1中是否有空格?当然,正如您所说的我创建的。如何删除空白?我尝试了所有的方法。它不起作用。replaceAll(\\s,“”)应该起作用。你确定你没有对你的绳子做过其他的事吗?replaceAll方法没有消除任何潜在的空白,这似乎很奇怪。