android if-else语句没有预期执行

时间:2016-03-16 03:14:22

标签: android

您好我正在构建一个带有TextView的计算器,该计算器响应按钮按下。 TextView开始是空白的,当我按下数学符号时,它通过不显示正常工作。但是,单击多次会忽略if-else语句中的条件并打印一个符号。我知道我遗漏了一些基本的东西。这是代码的一部分。

//Answer Space assignment
        final TextView input = (TextView) findViewById(R.id.answerSpace);
        input.setText("");


 //CLEAR
        Button clearButton = (Button) findViewById(R.id.clear);
        clearButton.setOnClickListener(
                new Button.OnClickListener(){
                    public void onClick(View v){
                        input.setText("");

                    }
                }
        );

        //PLUS
        final Button plusButton = (Button) findViewById(R.id.plus);
        plusButton.setOnClickListener(
                new Button.OnClickListener(){
                    public void onClick(View v){
                     if(input.getText().equals(""))
                     {
                         input.append("");
                     }
                        else
                     {
                         input.append("+");

                     }
                    }
                }
        );

2 个答案:

答案 0 :(得分:0)

Replace this

public void onClick(View v)
{
   if(input.getText().equals(""))
   {
       input.append("");
   }
   else
   {
       input.append("+");
   }
}

with this

public void onClick(View v)
{
    if(!input.getText().equals(""))
    {
         input.append("+");
    }
}

答案 1 :(得分:0)

      public void onClick(View v){
                 if(input.getText().trim().length > 0)
                 {
                     input.append("+");
                 }
                }

如果textview有空格

,这将避免添加+符号
相关问题