我是Java初学者,我必须编写一个程序,允许用户输入单词,然后程序向后返回单词,直到用户写“停止”。每次用户输入一个单词时,java都会向后输出它加上输出的前一个单词,我不希望这样。 例如,如果我把输入 jar 它输出,停止 如果我打印猫 它输出potstac 我怎样才能让java只向后输出单词而不将其添加到前面的单词上 例如我想输入pots 它应该输出,停止 我想打印猫 它应该输出,tac
import java.util.*;
public class javapdf2413 {
public static void main (String [] args) {
Scanner in = new Scanner (System.in);
String wordEntered = "";
String backWords = "";
do {
System.out.println("Enter in a word");
wordEntered = in.next();
for (int i = wordEntered.length()-1; i>=0; i--) {
backWords = backWords + wordEntered.charAt(i);
}
System.out.println(backWords);
}while(!wordEntered.equals("stop"));
}
}
最佳答案
您需要在 do
循环开头将 backWords
设置回空字符串。如果你不这样做,它只会连接到前一个字符串的末尾 - 这就是你所说的正在发生的情况。在循环体开始处将其设置回 ""
本质上会为下一个单词“重置”它。
像这样:
do {
backWords = "";
System.out.println("Enter in a word");
wordEntered = in.next();
for (int i = wordEntered.length()-1; i>=0; i--) {
backWords = backWords + wordEntered.charAt(i);
}
System.out.println(backWords);
}while(!wordEntered.equals("stop"));
关于java - 如何让java中的循环停止重复,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49525481/