如果原始String输入等于反向输入,则此代码应该反转String,然后使用if语句进行检查。但if语句永远不会运行,表明原始字符串和反向字符串不一样......即使我输入回文。
import java.util.Scanner;
public class TestScannerPalindrome {
static String reverse(String par) {
String reversed = new String();
for(int i = par.length() - 1; i >= 0; i--) {
reversed += par.charAt(i);
}
return reversed;
}
public static void main(String[] args) {
@SuppressWarnings("resource")
Scanner sc = new Scanner(System.in);
String unos = sc.nextLine();
if(unos == reverse(unos)) {
System.out.println(unos + " is palindrome");
} else {
System.out.println(unos + " is not palindrome");
}
}
}
答案 0 :(得分:0)
字符串是Java中的对象,因此您无法使用“==”运算符对它们进行比较。您必须使用String类的equals()方法。