为什么我的代码将旧单词与新单词组合在一起?输入是“香蕉”输出“香蕉”新输入“狗”输出“bananadgo”?
public static void main(String [] args)
{
Scanner keyboard = new Scanner(System.in);
String word, afc, newWord;
String s="";
do
{
word=keyboard.next().toLowerCase();
int i =word.length()-1;
char firstLetter=word.charAt(0);
afc=word.substring(1);
newWord= afc+firstLetter;
for( ; i>=0 ; )
{
s += newWord.charAt(i--);
}
System.out.println(word + "," + s);
if (s.equals(word))
System.out.println("Words are equal.");
else
System.out.println("Words are not equal.");
}
while (!(word.equals("quit")));
}
答案 0 :(得分:1)
您没有在循环开始时清除s
变量。
应该是
Scanner keyboard = new Scanner(System.in);
String word, afc, newWord;
do
{
String s="";
...
答案 1 :(得分:0)
试试这个
public static void main(String [] args)
{
Scanner keyboard = new Scanner(System.in);
String word, afc, newWord;
String s="";
do
{
s = "";
word=keyboard.next().toLowerCase();
int i =word.length()-1;
char firstLetter=word.charAt(0);
afc=word.substring(1);
newWord= afc+firstLetter;
for( ; i>=0 ; )
{
s += newWord.charAt(i--);
}
System.out.println(word + "," + s);
if (s.equals(word))
System.out.println("Words are equal.");
else
System.out.println("Words are not equal.");
}
while (!(word.equals("quit")));
}