【发布时间】:2011-10-24 11:16:59
【问题描述】:
我在编程 II 课上的一个问题遇到了一些问题,并且遇到了难题,想知道是否有人可以提供帮助?
该问题要求用户输入一个字符串,程序将输入的字符串反转,然后将反转与原始字符串进行比较,这必须递归完成。
到目前为止我有:
public class question1
{
public static void main(String args[])
{
String input = JOptionPane.showInputDialog(null, "Please enter a sentence to determine if it is a palindrome.");
String backwardsinput = Reverse(input);
System.out.println(backwardsinput);
boolean Palindrome = PalindromeCheck(backwardsinput, input);
if (Palindrome == true)
{
JOptionPane.showMessageDialog(null,"That is a palindrome!");
}
if (Palindrome == false)
{
JOptionPane.showMessageDialog(null,"That is not a palindrome");
}
}
public static String Reverse (String input)
{
if (input.length() <= 1)
return input;
else
{
char x = input.charAt(input.length()-1);
return x+Reverse(input.substring(0,input.length()-1));
}
}
public static boolean PalindromeCheck (String backwardsinput, String input)
{
if(input.length() == 0 || input.length() == 1)
return true;
if(backwardsinput.charAt(0) == input.charAt(input.length()-1))
return PalindromeCheck(backwardsinput.substring(1, backwardsinput.length()-1), input.substring(1, input.length()-1));
else
return false;
}
}
我的问题是,它告诉我一切都是回文,我看了一遍又一遍,不知道为什么!
【问题讨论】:
-
也许他们应该首先教你如何格式化你的代码,然后再转到其他主题。
-
如果您能指出我做错了什么或向我指出有关此事的一些资源,我将不胜感激。毕竟我只是想学习并尽我所能。
-
@Bohemian:不是我见过的最糟糕的格式 - 它只是需要一些工作的顶部!和 Eogcloud,我喜欢你的代码,尽管格式和错误! :-)
标签: java