使用带有 if-else 语句的 scan.nextLine 的结果 -- Java
Using result of a scan.nextLine with an if-else statement -- Java
我正在尝试制作一个 BAC(血液酒精含量)计算器,该计算器从用户那里获取输入并让他们知道他们是否有资格赢得... DUI 大奖!我正在尝试使用 Scanner 来确定此人是男性还是女性,然后根据用户输入的内容使用 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!");
}
*/
这样使用:
if(gender.equals("M"))
{
System.out.println("You're a man!");
}
else if(gender.equals("F"))
{
System.out.println("You're a woman!");
}
注意: = 是赋值运算符而不是条件运算符。
您可以在 link.
下面看到 java 中的相等条件是如何工作的
http://www.programmerinterview.com/index.php/java-questions/java-whats-the-difference-between-equals-and/
What's the difference between ".equals" and "=="?
比较 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!");
}
注意,那是==
(不是赋值的=
)。
我正在尝试制作一个 BAC(血液酒精含量)计算器,该计算器从用户那里获取输入并让他们知道他们是否有资格赢得... DUI 大奖!我正在尝试使用 Scanner 来确定此人是男性还是女性,然后根据用户输入的内容使用 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!");
}
*/
这样使用:
if(gender.equals("M"))
{
System.out.println("You're a man!");
}
else if(gender.equals("F"))
{
System.out.println("You're a woman!");
}
注意: = 是赋值运算符而不是条件运算符。
您可以在 link.
下面看到 java 中的相等条件是如何工作的
http://www.programmerinterview.com/index.php/java-questions/java-whats-the-difference-between-equals-and/
What's the difference between ".equals" and "=="?
比较 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!");
}
注意,那是==
(不是赋值的=
)。