这是代码:
import java.util.*;
public class HelloWorld
{
public static void main(String[] args)
{
String string1 = "randomString1";
System.out.print(f(string1));
}
public static int f(String string)
{
try {
String string2 = "randomString2";
if(string.equals(string2) == true);
return 0;
}
catch(Exception e){
e.printStackTrace();
}
return 1;
}
}//end of class
现在,这个程序的输出是
但我希望它是:
因为我想让
f
函数做的是,如果字符串相同,则返回 0
,否则返回 1
。所以,这里肯定有我知道的错误,我猜这与
equals
方法有关。 最佳答案
这就是问题:
if(string.equals(string2) == true);
----------------------------------^
你需要删除其他的分号,它本身几乎是一个什么都不做的表达式:
if(string.equals(string2) == true) return 0;
关于Java - 函数没有返回我所期望的,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/43392421/