您的位置:首页 > 编程语言 > Java开发

Scannner类下的nextInt()和nextLine同时使用出现的问题

2017-10-15 23:04 288 查看
对于nextInt()和nextLine()不能并用的问题

例子1:

public class Test01 {
public static void main(String[] args) {
//定义键盘录入对象
Scanner sc = new Scanner(System.in);
//输入一个字符串
System.out.println("请输入一个字符串");
String s = sc.nextLine();
//输入一个整型
System.out.println("请输入一个整型");
int t = sc.nextInt();
System.out.println("字符串s:" + s);
System.out.println("整型t:" + t);
}
}


先用nextLine接收字符串再接收整型,我们看看运行结果。



结果运行正常。

例子2:

public class Test01 {
public static void main(String[] args) {
//定义键盘录入对象
Scanner sc = new Scanner(System.in);
//输入一个整型
System.out.println("请输入一个整型");
int t = sc.nextInt();
//输入一个字符串
System.out.println("请输入一个字符串");
String s = sc.nextLine();
System.out.println("整型t:" + t);
System.out.println("字符串s:" + s);
}
}


然后先输入整型,再输入字符串,看看运行结果。



结果是:字符串没有提示输入。

由此我们可以看出来nextInt()和nextLine()再同一个Scanner对象下面,可能回出现无法录入的问题。因此,再整型和字符串类型同时录入的情况下,最好不要同一个Scanner对象接收,或者都用nextLine()接收,然后再将整型强制转换为字符串类型。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  string java
相关文章推荐