gpt4 book ai didi

java - Scanner 和 nextInt 丢弃整数

转载 作者:塔克拉玛干 更新时间:2023-11-01 21:49:17 24 4
gpt4 key购买 nike

我正在使用 Scanner 在 java 中获取用户输入。当我使用 nextInt() 并且用户输入“2 5”时,将分配值“2”并丢弃 5。如果我想显示这样的输入是错误的怎么办?我想到的一个解决方案是我可以使用 nextString() 而不是 nextInt() 然后解决问题。但是有人可以提出更好的解决方案吗?

我意识到它并没有丢弃空格后的整数,而是将其用于下一个输入。

import java.util.Scanner;
class Test{
static Scanner in=new Scanner(System.in);
static void trial(){
int k=in.nextInt();
System.out.println(k);
System.out.println(k);
}

public static void main(String[] args){
int k=in.nextInt();
System.out.println(k);
System.out.println(k);
trial();
}
}

最佳答案

1.首先使用nextLine()读取整行。

2.使用Integer.parseInt()方法验证整数输入

例如:

Scanner scan = new Scanner(System.in);
String s = scan.nextLine();

try{
Integer.parseInt(s);
}
catch(NumberFormatException ex){
System.out.println("Its not a valid Integer");
}

关于java - Scanner 和 nextInt 丢弃整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11643222/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com