嘿,我可以使用一點幫助,找出爲什麼我的程序不工作。問題在於使用遞歸的程序,在刪除所有標點符號和空白符後,如果給出的文本是迴文,則會計算出該文本。當程序到目前爲止編譯時,它將每個值都返回爲false。我們只允許改變isSymmetrical方法。我可以使用任何可能的幫助來弄清楚如何完成這項工作。謝謝。字符串對稱程序
public class StringSymmetry {
public static boolean isSymmetrical(String inputText)
{
if(inputText.length() == 0 || inputText.length() ==1)
return true;
if(inputText.charAt(0) == inputText.charAt(inputText.length()-1))
return isSymmetrical(inputText.substring(1,inputText.length()-1));
return false;
}
public static void main(String[] args) {
String[] sampleData =
{ "Don't nod",
"Dogma: I am God",
"Too bad - I hid a boot",
"Rats live on no evil star",
"No trace; not one carton",
"Was it Eliot's toilet I saw?",
"Murder for a jar of red rum",
"May a moody baby doom a yam?",
"Go hang a salami; I'm a lasagna hog!",
"Name is Bond, James Bond"
};
for (String s : sampleData)
{
System.out.println("isSymmetrical (" + s + ") returns " + isSymmetrical(s));
}
}
}
你在哪裏移除標點符號和空格? – vidit 2013-04-28 02:22:23