我编写了一个应该支持英语和德语的 Java 程序。如果设置了一个参数并且如果它等于“english”或“English”,它应该调用一个执行英文版本的方法,如果没有参数或者它不等于“English”或“english”,它应该调用德文版的方法。但是, (args[0]=="english"||args[0]=="English") 无论我的参数是什么,它都是假的,即使它应该是真的,我不明白为什么会这样。
这是主要的方法,其他的不重要,所以我将它们放在一边。
public static void main(String[] args){
boolean input=args.length==1;
System.out.println(input);
boolean mode = false;
if (input) mode=args[0]=="English"||args[0]=="english";
System.out.println(mode);
if(input&&mode) english();
else german();
}
有没有人知道为什么它不会是真的,不管我的参数是什么?