java - 试图用空格分割用户输入字符串
问题描述
试图拆分一个字符串并输出用户输入的倒数第二个单词,但 .split() 似乎只是将单个字符串输出到数组中,所以它不起作用?
import java.util.*;
public class Random_Exercises_no60 {
public static void main(String[] args) {
Scanner sc = new Scanner (System.in);
System.out.println("Please enter a sentence.");
String sentence = sc.next();
String[] words = sentence.split("\\s+");
System.out.println(words.length); // Just to check the array
System.out.println("Penultimate word " + words[words.length - 2]);
}
}
解决方案
问题不在于split
方法,而应该使用nextLine
而不是next
:
String sentence = sc.nextLine();
推荐阅读
- flutter - 使用 VS Code 在 Genymotion 机器上运行 Flutter
- audio - 删除音频文件静音的脚本
- php - 选中与否时如何使复选框带有正确的值
- python - 什么时候应该使用时间序列分析与非时间序列分析?
- typescript - 如何在减少函数中添加正确的类型?
- machine-learning - 为什么我们在特征映射时省略多项式项的系数?
- javascript - 如果一个页面有多个 SVG,如果单击其中的文本,如何找到选定的根 SVG 元素?
- django - 从 Django 中的字典/查询中渲染文本
- rasa-nlu - rasa nlu 中相似词的意图识别不正确
- c# - 使用 C# 使用 oauth2 读取 gmail atom 提要