我是一名学生,试图让这个回文检查器反射(reflect)输入的字符串是否确实是回文。我一直只返回一个结果,但我不明白为什么。不确定我的循环中是否遗漏了某些内容,或者我的循环中是否有不正确的内容。
public class Palindrome {
public static void main(String[] args) {
System.out.println("Palindrome Checker: ");
palindromChecker("aabaa", "cat", "racecar", "dog", "Madam");
}
public static void palindromChecker(String... values) {
String stbr = "";
String reverse = " ";
for (int i = stbr.length() - 1; i >= 0; i--)
reverse += stbr.charAt(i);
if (reverse.equalsIgnoreCase(stbr))
System.out.println("This is a Palindrome");
else {
System.out.println("This is NOT a Palindrome");
}
}
}
最佳答案
您实际上并没有循环数组 values
中的输入值。你正在做的是试图扭转 stbr
您指定为空字符串。你想做这样的事情:
public class Palindrome {
public static void main(String[] args) {
System.out.println("Palindrome Checker: ");
palindromChecker("aabaa", "cat", "racecar", "dog", "Madam");
}
public static void palindromChecker(String... values) {
for (String stbr : values) {
String reverse = "";
for (int i = stbr.length() - 1; i >= 0; i--) {
reverse += stbr.charAt(i);
}
if (reverse.equalsIgnoreCase(stbr)) {
System.out.println("This is a Palindrome");
} else {
System.out.println("This is NOT a Palindrome");
}
}
}
}
for (String stbr : values) {
循环遍历 values
中的每个元素一次一个,允许您反转并检查输入的每个元素。
关于java - 回文字符串 VarArgs - Java(没有数组,只有 VarArgs),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57846426/