java - 如何读取可能是 int 或 double 的输入?

标签 java parsing integer double keyboard-input

<分区>

我正在编写一个需要从键盘输入的程序。我需要输入一个数字,但不确定它是 int 还是 double。这是我的代码(针对该特定部分):

import java.io.*;
import java.util.*;

//...
Scanner input  = new Scanner(System.in); 
int choice = input.nextInt();

我知道我可以获得一个 String 并执行 parseInt()parseDouble(),但我不知道它是哪一个会的。

最佳答案

嗯,整数也是 double 的,所以如果你假设所有东西都是 double 的,你的逻辑就没问题了。像这样:

import java.io.*;
import java.util.*;
Scanner input  = new Scanner(System.in); 
double choice = input.nextDouble();

只有当您出于某种原因需要输入为整数时,它才会变得复杂。然后,用于测试 int 的 parseInt() 就可以了。

关于java - 如何读取可能是 int 或 double 的输入?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31642352/

相关文章:

integer - Julia 中 2 个正数的乘积得到负数

Java JNI方法id缓存

java - Path2D -- .contain() 不起作用

java - 如何在freemarker中检查空列表

php - PHP解析/语法错误;以及如何解决它们

python - PyParsing 简单的语言表达式

android - 将 JSON String 转换为 JSON Array 并显示在 ListView 中

java - 为什么我会收到关于从静态上下文中引用非静态方法的错误?

c - 为什么在 short/int/long 中多了一个整数类型?

c++ - 如何在 C++ 中追加一个整数(带有一个整数)