0

在我的代码中,我将 button.gettext 与 int 值进行比较,两者都是 eqyal 但它不打印 Toast 消息。不比较两个值对我有帮助....

        public static int mDay;
        Button e01;

        public static String[][] a = new String[6][7];

           e02.setText("" + a[0][2]);

         if(e01.getText().toString().equals(mDay))
    {
        e01.setTextColor(Color.parseColor("#FFBBFF"));

    Toast.makeText(this, "Button2 text equals!", Toast.LENGTH_SHORT).show();

    }



          //// in debug mode both gives value 29
               e01.getText().toString() =29
               mDay=29
4

3 回答 3

1

测试这个条件

Integer.parseInt(e01.getText().toString()) == mDay
于 2013-07-29T00:00:31.547 回答
1

您正在将整数与字符串进行比较。您需要将 int 转换为字符串

int a = 29;
String b = "29";
System.out.println(b.equals(a));
//prints false
System.out.println(b.equals(String.valueOf(a)));
//prints true

所以基本上你的 if 应该是这样的:

if(e01.getText().toString().equals(String.valueOf(mDay))
于 2013-07-29T00:03:48.087 回答
0

试试 if(Integer.parseInt(e01) == mDay)

于 2013-07-29T00:01:51.783 回答