Java If语句帮助初学者

Col*_*107 -3 java if-statement

我只是在学习java,所以这可能是一个非常愚蠢的问题,但我找不到一个简单的答案.我正在尝试制作程序,如果用户输入"male"来运行System.out.print("你是一个人");
这是我的代码:

    import java.util.Scanner;

public class clac {
    public static void main(String[] args){
        double gender;
        Scanner input = new Scanner(System.in);
        System.out.print("Are you male or female? ");
        gender = input.nextDouble();
        if (gender == "male"){
            System.out.println("You are a guy");
        }else{
            System.out.print("You are a gal.");
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

Mar*_*aux 5

你做错了什么:你需要读一个字符串.String是一段文本.双精度是十进制数.你正在阅读双人.

如何解决:

String gender = input.next(); // read a String, instead of double
if (gender.equals("male")) // if (gender == "male") use .equals for strings
{
    System.out.println("U mad bro!?");
} else
{
    System.out.println("Hey Doll!");
}
Run Code Online (Sandbox Code Playgroud)

  • @Nambari:我打算补充一点.但首先我从一个非常简短的快速回答开始,然后立即开始扩展它:) (2认同)