这就是我必须要做的。我需要保留已经编写的内容,但是我不知道如何使用循环和charAt()来查找回文。输入的是在终端行中写入字符串所需的代码,因此我不能有任何输入。有什么建议吗?
import java.io.*;
import java.util.*;
public class Palindrome
{
public static void main (String[] args) throws IOException
{
try // WE WILL TALK ABOUT EXCEPTIONS EVENTUALLY - JUST PUT ALL YOUR CODE IN THIS TRY BLOCK
{
// --------------------------------------------------------------------------------------------------------
if (args.length == 0)
{
System.out.println("FATAL ERROR: Must enter a word on the command line!\n");
System.exit(0);
}
String word = args[0];
boolean isPalindrome=true;
// --------------------------------------------------------------------------------------------------------
// --------------------------------------------------------------------------------------------------------
if (isPalindrome)
System.out.println( word + " IS a palindrome." );
else
System.out.println( word + " NOT a palindrome." );
}
catch ( Exception e )
{
StringWriter sw = new StringWriter();
e.printStackTrace(new PrintWriter(sw));
System.out.println("EXCEPTION CAUGHT: " + sw.toString() );
System.exit( 0 );
}
} // END main
} //END CLASS Palindrome发布于 2012-09-21 06:13:50
对于所有i in 0..n/2,请确保word[i] == word[someIndexThatDependsOnI]为true。(也就是说,如果任何word[i] == word[someIndexThatDependsOnI]为false,则它不是回文。使用适当的关键字可以在此时停止循环。)
我将someIndexThatDependsOnI的查找留给读者,但它涉及到字符串的大小。
发布于 2012-09-21 06:16:33
public bool isPalindrom(String word) {
for (int i = 0;i < word.length/2; i++) {
if (word.charAt(i) != word.charat(word.length - i - 1)) {
return false;
}
}
return true;
}但是,您必须检查编程错误,因为我前面没有IDE
干杯
https://stackoverflow.com/questions/12521653
复制相似问题