此代码在main
函数内部:
Scanner input = new Scanner(System.in);
System.out.println("Type a sentence");
String sentence = input.next();
Stack<Character> stk = new Stack<Character>();
int i = 0;
while (i < sentence.length())
{
while (sentence.charAt(i) != ' ' && i < sentence.length() - 1)
{
stk.push(sentence.charAt(i));
i++;
}
stk.empty();
i++;
}
这是empty()
功能:
public void empty()
{
while (this.first != null)
System.out.print(this.pop());
}
它不能正常工作,因为通过输入example sentence
我得到这个输出:lpmaxe
。第一个字母丢失,循环停止,而不是从空格算到句子的下一部分。
我正在努力实现这一目标:
This is a sentence
---> sihT si a ecnetnes