import java.util.Scanner;
public class nesting {
public static void main(String[] agrs){
Scanner input = new Scanner(System.in);
System.out.println("请输入成绩");
double achievement= input.nextDouble();
if (achievement > 8.0) {
System.out.println("成绩合格");
System.out.println("请输入性别");
String gender= input.next();//
//这里输入字符串然后在if比较字符串,输入的和if一样的却没有执行if下面那句
System.out.println(gender);
if (gender == "男") {
System.out.println("成功进入男子组决赛");
}
else if (gender == "女") {
System.out.println("成功进入女子组决赛");
}
}
else {
System.out.println("成绩不合格,已被淘汰");
}
}
}
字符串比较是否相等用equals
if(gender.equals('男'))
新年快乐🎉,望采纳,谢谢!
if (gender == "男") {
System.out.println("成功进入男子组决赛");
}
else if (gender == "女") {
System.out.println("成功进入女子组决赛");
}
这些代码应改为
if (gender.equals("男")) {
System.out.println("成功进入男子组决赛");
}
else if (gender.equals("女")) {
System.out.println("成功进入女子组决赛");
}
字符串不用==比较,而用equals方法判断,如if(gender.equals("男"))
你这个问题是因为比较字符串用了等号,正确应该用 equals 来判断。
作为新人你应该必须知道的是 ‘==’ 和 ‘equals’的区别,下面这个文章详解:
https://blog.csdn.net/qq_32907417/article/details/50672904
正确的代码应该改为:
if (gender.equals("男")) {
System.out.println("成功进入男子组决赛");
}
else if (gender.equals("女")) {
System.out.println("成功进入女子组决赛");
}
可以先了解下比较相等的相关知识点。==和equals的区别
==不仅会比较值,还会比较引用地址