如何设置循环来选择句子中的单词?

时间:2013-12-06 22:35:30

标签: java

目标:创建一个带有单个String参数的函数。然后评估字符串,并反转字符串中的单词。

输出

前:你好世界!   - olleH!dlroW

* 问题 *我是如何设置循环以便将单词与句子分开的?
我正在使用扫描程序以String对象的形式从用户那里获取输入。

3 个答案:

答案 0 :(得分:1)

分词很容易:请参阅http://docs.oracle.com/javase/7/docs/api/java/lang/String.html#split(java.lang.String)

String[] words = sentence.split(" ");

会导致words包含由空格分隔的每个单词。

答案 1 :(得分:0)

String source = "Hello World";

for (String part : source.split(" ")) {
    System.out.print(new StringBuilder(part).reverse().toString());
    System.out.print(" ");
}

输出:

olleH dlroW

注意:评论者已经正确地指出了我认为应该在这里提及的一些事情。此示例将在结果的末尾附加一个额外的空格。它还假设您的单词每个单独的空格分隔,并且您的句子不包含标点符号。

致谢:@William Brendel

答案 2 :(得分:0)

String str = new Scanner(System.in).nextLine();
Stack<String> stack = new Stack<String>();
for (String s : str.split(" ")) {
    stack.push(new StringBuilder(s).toString());
}
while (!stack.isEmpty()) {
  System.out.print(stack.pop() + " ");
}

这专门将它推入堆栈然后弹出它以反转它。

我带了一些代码E. Doroskevic,抱歉!