java - 尝试拆分从用户扫描的 Java 中的字符串
问题描述
我正在构建一个项目,我将从用户那里获取三个输入:姓名、ID、GPA。用户应在一行中输入它们,以半列分隔";" 我希望能够将它们作为一行接收并能够将它们保存在三个变量中。我正在应用一种方法,我将从用户那里获取三个变量。例如:用户将输入姓名、ID 和 GPA,如下所示:
1;Sally;90.5; //in one line separated by ";"
我希望能够将用户的每个信息保存在不同的变量中。有人可以告诉我如何实现吗?
这是方法:
private static void addNewStudent() {
System.out.println("enter ID;Name;Gpa; ");
String info = scanner.nextLine();
注意:我正在尝试在我的项目中应用 CSV。
解决方案
您只需读取一行,然后将其拆分为字符串数组。输入顺序必须是 ID -> NAME -> GPA:
private static void addNewStudent() {
Scanner scanner = new Scanner(System.in);
System.out.println("enter ID;Name;Gpa; ");
String info = scanner.nextLine();
if (info != null) {
String[] infoArray = info.split(",");
if (infoArray.length == 3) {
String id = infoArray[0];
String name = infoArray[1];
String gpa = infoArray[2];
}
}
}
推荐阅读
- python-3.x - 如何计算 Keras 中二维阵列的地球移动器损失?
- excel - 如何在 Excel 中使用 Gnuplot 插件
- swift - GMSGroundOverlay.icon 的官方限制大小是多少?
- apache-spark - 是否有可能从 ADLS Gen2 中移动或删除了某些镶木地板文件而没有反映在日志中?
- oracle-apex - Oracle APEX 从函数打开页面
- javascript - Javascript取消选中Vue的所有框功能
- python - Pythonic 生成具有一个固定列和一个随机列的数组的方法
- docker - Docker 官方私有注册表 - 按标签正确删除图像?
- google-cloud-platform - 谷歌云付费账户
- c# - Windows 窗体应用程序 - 文本框 c