java如何获取scanner_java – 使用Scanner获取用户输入
这是因为您使用的是
Scanner#next方法.如果你查看该方法的文档,它将返回下一个标记读取.
因此,当您使用next方法读取用户输入时,它不会在最后读取换行符.然后由while循环中的nextLine()读取.因此,您的firstName包含一个不知道的换行符.
所以,你应该在你的while而不是next()中使用nextLine().
与nextInt方法类似.它也不会读取换行符.因此,您可以使用readLine读取并使用Integer.parseInt将其转换为int.如果输入值无法转换为int,则可能抛出NumberFormatException.所以你需要相应地处理它.
您可以尝试以下代码: –
Scanner sc = new Scanner(System.in);
System.out.println("Continue?[Y/N]");
while (sc.hasNext() && (sc.nextLine().equalsIgnoreCase("y"))) {//change here
System.out.println("Enter first name");
String name = sc.nextLine();
System.out.println("Enter surname");
String surname = sc.nextLine();
System.out.println("Enter number");
int number = 0;
try {
number = Integer.parseInt(sc.nextLine());
} catch (IllegalArgumentException e) {
e.printStackTrace();
}
System.out.println("Continue?[Y/N]");
}
但是,请注意一件事,如果输入一个无法传递给Integer.parseInt的值,您将获得一个异常,并且将跳过该输入.对于这种情况,您需要使用while循环来处理它.
或者,如果您不想进行异常处理: –
你可以在sc.nextInt()之后添加一个空的sc.nextLine(),它将使用剩下的换行符,如下所示: –
// Left over part of your while loop
String surname = sc.nextLine();
System.out.println("Enter number");
int number = sc.nextInt();
sc.nextLine(); // To consume the left over newline;
System.out.println("Continue?[Y/N]");
java如何获取scanner_java – 使用Scanner获取用户输入相关推荐
- 编写一个Java应用程序,从键盘读取用户输入两个字符串,并重载3个函数分别实现这两个字符串的拼接、整数相加和浮点数相加。要进行异常处理,对输入的不符合要求的字符串提示给用户,不能使程序崩溃。
编写一个Java应用程序,从键盘读取用户输入两个字符串,并重载3个函数分别实现这两个字符串的拼接.整数相加和浮点数相加.要进行异常处理,对输入的不符合要求的字符串提示给用户,不能使程序崩溃. pack ...
- java中if判断季节_Java判断用户输入月份的季节
Java判断用户输入月份的季节 发布于 2020-12-7| 复制链接 摘记: 要求: * 根据用户输入的月份来判断该月季节实现代码: ```java import java.util.Scanne ...
- java 字符串 转 文件路径_连接用户输入字符串转换为完整的文件路径(Java)
我写了一个简短的脚本来创建一个文件到我的桌面,文件出现了 . 我只是在main中完成了所有操作,如下所示: import java.io.*; import java.util.Scanner; pu ...
- php 通过对话框获取参数,利用对话框提示用户输入参数的查询过程称为()
按负担能力收费 使用噪声测量仪器前后应作哪些校准和检查? 电力市场分析收集的数据资源主要有哪些? 下列关于期权投资策略的表述中,不正确的是( ). 酒精-水型防冻液的冰点限制在()左右. 哪些交易或者 ...
- 读入两个字符串java_编写一个Java应用程序,从键盘读取用户输入两个字符串,并重载3个strAdd函数...
分别实现这两个字符串的拼接.整数相加和浮点数相加.要进行异常处理,对输入的不符合要求的字符串提示给用户,不能使程序崩溃.publicclassStrinput{publicstaticvoidmain ...
- Java最大值最小值问题(用户输入)
前言:做编程题遇到的问题,对思路有较好启示 目录 输入的值较少 输入的值较多 方法一(循环) 方法二(Arrays.sort排序)(值较少时也可以用) 输入的值较少 当输入的值较少时, ...
- 通过java程序判断用户输入的是字符串还是整数
在Java程序中可以使用instanceof关键字判断用户输入的是字符串还是整数.可以将用户输入的值存储在一个Object类型的变量中,然后使用instanceof关键字检查该变量是否是String类 ...
- 如何获取Java用户输入?
本文翻译自:How can I get the user input in Java? I attempted to create a calculator, but I can not get it ...
- scanner 获取控制台信息_关于java.util.scanner:如何使用Java中的Scanner类从控制台读取输入?...
如何使用Scanner类从控制台读取输入? 像这样: System.out.println("Enter your username:"); Scanner = input(); ...
- java获取系统信息:java的信息、操作系统的信息、用户的信息、虚拟机的信息、系统设置的信息。
全栈工程师开发手册 (作者:栾鹏) java教程全解 java获取系统信息:java的信息.操作系统的信息.用户的信息.虚拟机的信息.系统设置的信息. package com.lp.app.windo ...
最新文章
- ORA-04031错误导致宕机案例分析
- 已知数据信息为 16位,最少应附加( )位校验位,以实现海明码纠错。
- 关于微信浏览器H5 React,Vue工程化项目input无法自动聚焦疑难杂症排查
- 信息化基础建设 工作流开发
- mysql8基本操作
- Android笔记 apk的反编译 | 更新于2017/7/25
- 判断objcet是否是map类型_Java集合类和Map判定一个对象是否已经存在
- Python 如何从字符串中提取 URL 链接
- CC2530休眠-PM2-PM3
- 多伦多计算机科学排名,2017加拿大大学专业排名:计算机科学类项目
- DirectX12(D3D12)基础教程(八)——多显卡渲染基础、共享纹理、多GPU同步
- 三、pandas_datareader金融数据
- 如何写好产品需求文档
- Oracle 的next_day函数详解
- echarts柱状图顶部数据显示气泡
- java ajax教程_AJAX Java
- 南加州大学计算机专业研究生录取,南加州大学研究生录取案例分享
- android防丢器设计,☆基于51单片机的无线防丢器设计|可以防止儿童走丢的神奇...
- 钉钉消息会话管理,给钉钉传一个url的连接会话传递多个参数的问题
- python高手之路python处理excel文件
热门文章
- socket编程之TCP/UDP
- 关于交流电路的谐振等问题
- spring AOP(二) 相关类或接口
- Android简单的发短信示例
- Python 监控 DB 服务器信息(cpu, 磁盘,进程,alert log) 脚本
- 查看vs支持的c#语言版本/查看.NetCore版本/更改c#语言版本
- Layui 表格渲染
- 《WordPress插件开发手册》目录
- linux下安装apache mysql,linux下常见的apache+mysql+php的安装
- 泰山JDK8升级u302,找到了更好的整合mips办法