运行得不到正确答案???

来源:百度知道 编辑:UC知道 时间:2024/05/31 16:05:08
import java.util.*;
class Test{
public static void main(String[] args){
String A=null;
String B=null;
String C=null;
Scanner s=new Scanner(System.in);
System.out.println("2008年奥运会将在哪里举行");
System.out.println("A:北京");
System.out.println("B:上海");
System.out.println("C:香港");
String x=s.next();

if(x==A){
System.out.println("恭喜你,答对了");
}
else{
System.out.println("对不起,你答错了");
}
}
}
我如果选A,打印结果为“对不起,你答错了”

给你改了一下程序.
public static void main(String[] args){
String A=null;
String B=null;
String C=null;
Scanner s=new Scanner(System.in);
System.out.println("2008年奥运会将在哪里举行");
System.out.println("A:北京");
System.out.println("B:上海");
System.out.println("C:香港");
String x=s.next();

if( x.equalsIgnoreCase("a")){
System.out.println("恭喜你,答对了");
}
else{
System.out.println("对不起,你答错了");
}
}

//这里注意一下.你所定义的String A,B,C没有任何意义,可以去掉.另外.字符串的比较应该用"equals"而不是"==".再有就是String类型要区分大小写的.如果你希望无论输入A还是a都正确,那就用"equalsIgnoreCase"这个关键字.

if("A".equals(x))

你傻啊你
String A=null;
String B=null;
String C=null;

null 和 输入的"A" 怎么返回 True