我正在尝试制作一个BAC(血液酒精含量)计算器,该计算器接收用户的输入并让他们知道他们是否有资格赢得...一个大的DUI奖!我正在尝试使用扫描仪来确定该人是男性还是女性,然后根据用户输入的内容使用if-then语句...但我真的不知道如何。它应该是一个非常简单的修复,但这就是我所拥有的,并且有点我想用if-then语句注释掉的内容。
import java.util.*;
public class Proj2_Mazzone
{
public static void main (String[] args)
{
Scanner scan = new Scanner(System.in);
String gender;
int D, W, H, age;
...
System.out.print("Enter M if you're a male, or F if you're a female: ");
gender = scan.nextLine();
/*if(gender = M)
{
System.out.println("You're a man!");
}
else if(gender = F)
{
System.out.println("You're a woman!");
}
*/
答案 0 :(得分:2)
使用如下:
if(gender.equals("M"))
{
System.out.println("You're a man!");
}
else if(gender.equals("F"))
{
System.out.println("You're a woman!");
}
注意: =赋值运算符不是条件运算符。
您可以在下面的链接中看到java中的条件是否相同
http://www.programmerinterview.com/index.php/java-questions/java-whats-the-difference-between-equals-and/
What's the difference between ".equals" and "=="?
答案 1 :(得分:2)
比较String
时,您使用.equals()
或.equalsIgnoreCase()
。像,
gender = scan.nextLine();
if (gender.equalsIgnoreCase("m")) {
System.out.println("You're a man!");
} else if (gender.equalsIgnoreCase("f")) {
System.out.println("You're a woman!");
}
但是,您也可以将第一个字符与
之类的字符进行比较if (Character.toUpperCase(gender.charAt(0)) == 'M') {
System.out.println("You're a man!");
} else if (Character.toUpperCase(gender.charAt(0)) == 'F') {
System.out.println("You're a woman!");
}
注意,即==
(不是=
,用于转让。)