编程java确定一个对称的单词

我是新来的,但我很难弄清楚如何编写代码来确定单词的输入并查看第一个是否与单词的结尾匹配。 你可以输入abba并得到答案,它是均匀对称的,aba是奇怪对称的。

请告诉我如何:(

只是两个主要的事情。

首先我想知道它是奇怪的还是均匀的字母数量(字母数除以2,如果它以0.5结尾,它是奇怪的对称,如果是一个整数,它是均匀对称的。

第二,我想得到(即1 = n,2 = n-1,3 = n-2 ……)这个词中字母的位置是执行的主要思想。如果有一个最后一个字母在奇怪的对称词,忽略最后剩下的字母。

我感谢任何headstart或想法:)谢谢!

谢谢KDiTraglia,我制作了代码并编译了,这就是我所说的。 我没有进一步。

报告问题:

线程“main”中的exceptionjava.lang.Error:未解决的编译问题:反向无法解析或者不是字段反向无法解析或者不是字段语法错误,插入“)语句”完成IfStatement

这就是我得到的,KDiTraglia的帮助

public class WordSymmetric { public static void main(String[] args) { String word = "abccdccba"; if ( (word.length() % 2) == 1 ) { System.out.println("They are oddly symmetric"); //odd } else { System.out.println("They are evenly symmetric"); //even } int halfLength = word.length() / 2; String firstHalf = word.substring(0, halfLength); String secondHalf = word.substring(halfLength, word.length()); System.out.println(secondHalf.reverse()); if (firstHalf.equals(secondHalf.reverse()) { System.out.println("They match"); //they match } 

}}

您可以使用模运算符来确定单词是偶数还是奇数(java中为%)

 if ( (word.length % 2) == 1 ) { //odd } else { //even } 

然后将字符串分成两半,并将结束的反面与正面相比较

 int halfLength = word.length / 2; String firstHalf = word.substring(0, halfLength); String secondHalf = word.substring(halfLength, word.length); if (firstHalf.equals(secondHalf.reverse()) { //they match } 

像这样的东西应该工作,我只是快速写了,可能需要做一些改变来匹配java语法。