我正在编写一个程序,需要从键盘输入数据。我需要接收一个数字输入,但是我不确定它是int
还是double
类型。以下是我处理这个问题的代码:
import java.io.*;
import java.util.*;
//...
Scanner input = new Scanner(System.in);
int choice = input.nextInt();
我知道我可以获得一个String
并使用parseInt()
或者parseDouble()
,但是我不知道它将是哪一个。
String
。然后,您需要验证给定的数字是数字。如果它包含一个点或逗号,并且左右两部分都是数字,那么它就是一个double
。否则,如果没有点或逗号但其余部分是数字,则为int
。用于检查是否为双精度浮点数可以使用此 正则表达式:"-?\d+(\.\d+)",对于数字,您可以使用 "[0-9]*"。 - pietv8x