跳过If语句

Jak*_*eba 3 java string

import java.util.Scanner;

public class Questionaire {

  public static void main(String[] args) {

    String name;
    String ansOne;
    Scanner input = new Scanner(System.in);

    System.out.print("Hello, welcome to the super awesome quiz. Let's get things going. What is your name?");
    name = input.nextLine();
    System.out.print("Okay, hi " + name + " I'm just going to call you Bob.");
    System.out.print(" Question 1: What is the name of your dog?");
    ansOne = input.nextLine();

    if (ansOne == "Avagantamos") {
      System.out.print("Correct!");
    } else {
      System.out.print("Wrong! The correct answer was Avagantamos!");
    }

  }
}
Run Code Online (Sandbox Code Playgroud)

所以基本上,当它要求你输入你的狗的名字时,它总是不正确的,即使你输入Avagantamos.我仍然是真正的菜鸟,这真的令人沮丧,所以非常感谢你的回应.

Hov*_*els 9

不要==用来比较字符串.使用equals(...)或equalsIgnoreCase(...)方法.

理解==检查两个对象是否相同而不是您感兴趣的内容.另一方面,这些方法检查两个字符串是否具有相同顺序的相同字符,这就是重要的.而不是

if (fu == "bar") {
  // do something
}
Run Code Online (Sandbox Code Playgroud)

做,

if (fu.equals("bar")) {
  // do something
}
Run Code Online (Sandbox Code Playgroud)

要么,

if (fu.equalsIgnoreCase("bar")) {
  // do something
}
Run Code Online (Sandbox Code Playgroud)