0

我的应用程序中有此代码。它接受edittext的值

        if (ans.equalsIgnoreCase("bag")) {

                btnEnter.setEnabled(false);
            int a=Integer.parseInt(textView2.getText().toString());
            int b=a+10;
            String s1 = String.valueOf(b);
            textView2.setText(s1);  
            Toast.makeText(getApplicationContext(), "Correct",Toast.LENGTH_SHORT).show();

我的问题是,如果用户在edittext中放置一个空格,然后继续使用“bag”,它仍然会提示错误,例如

" " = 空格

" " 包 ----- 错误包 ----- 正确

我如何设置它可以接受的空间

4

1 回答 1

2
      String ans2 = ans.trim();
      if (ans2.equalsIgnoreCase("bag")) {

        btnEnter.setEnabled(false);
        int a=Integer.parseInt(textView2.getText().toString());
        int b=a+10;
        String s1 = String.valueOf(b);
        textView2.setText(s1);  
        Toast.makeText(getApplicationContext(), "Correct",Toast.LENGTH_SHORT).show();

修剪()函数

返回字符串的副本,省略前导和尾随空格。

由于@ρяσѕρєя K 在我回来删除我的答案之前删除了他的答案,我将添加他的简化编辑。改变

if (ans2.equalsIgnoreCase("bag")) {

if (ans.trim().equalsIgnoreCase("bag")) {

那么不需要

String ans2 = ans.trim();

但是在某些情况下,使用第二个变量可能会更好地提高可读性或功能性

编辑 要注意空间之间的问题,您可以尝试

if (!ans.contains("") && ans.trim().equalsIgnoreCase("bag")) {

不知道为什么这不起作用,但您可以使用该replace功能Strings

       String ans2 = ans.replace(" ", "");
       if (ans2.trim().equalsIgnoreCase("bag")) {
于 2013-03-05T18:36:55.793 回答