有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java ifelse部分不工作

为什么if-else部分在下面的代码中不起作用。我在if之前检查了success的值,它返回true,但if内的代码不起作用

protected void onPostExecute(Void aVoid) {
              super.onPostExecute(aVoid);    
              dialog.dismiss();
              System.out.println(success);
              if(success == "true")
              {
                  Toast t = Toast.makeText(getApplicationContext(), "Successfully logged in", Toast.LENGTH_SHORT);
                    t.show();
                    Intent intent = new Intent(MainActivity.this, Quote_Details.class);         
                    intent.putExtra("sessionId", sessionId);
                    startActivity(intent);
              }
              else if(success == "fals")
              {
               Toast f = Toast.makeText(getApplicationContext(), "LOGIN FAILED", Toast.LENGTH_LONG);
               f.show();
              }
             }

共 (2) 个答案

  1. # 1 楼答案

    要比较字符串,请使用“.equals”

    例如:

    if (success.equals("true"))
    

    编辑:哎呀,有人跑得更快了。。。好吧,至少你现在也有了一个例子:)

  2. # 2 楼答案

    您应该将字符串与equals方法进行比较,而不是与==运算符进行比较。运算符==只是比较对象引用,而不是对象的内容