Java 方法返回双 |整数

标签 java int double primitive

我需要一个接受字符串数字作为参数的方法,如果它有余数则返回 double,如果它是小数则返回 int。

我写了这样的代码:

 private double convertToNumber(String number) {
    double d = Double.parseDouble(number);
    if (d % 1.0 == 0) {
        return Integer.parseInt(number);
    } else {
        return d;
    }
}

但是由于此方法的签名是 double 的,所以它在任何情况下都会返回 double 。

请给我一些提示。

最佳答案

函数的签名只能是一 (1) 种类型,即 int 或 double,但不能同时是这两种类型。如果数字有小数部分 (true) 或 (false) 没有小数部分,您也许可以尝试重新设计函数以返回 boolean 值。

请记住整数不能包含小数部分,所以像

这样的操作
int a = 3 / 2;

会将 a 设置为 1 而不是 1.5

关于Java 方法返回双 |整数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30631951/

相关文章:

C++ : int _b(di*3) convert to C

python - 用大数组中的零替换空值或缺失值

C 浮点零比较

java - 如何使用 JavaScript 加载 Google Chart API 的 session 数据

java - DAO 接口(interface)/实现分离层次结构和约定

java - 如何保存 ListView 状态并返回到该状态

jqGrid 单元格编辑 - 双击编辑?

java - OWL:从现有本体中获取类

SQL 将 INT 转换为日期时间

c++ - 在 CPLEX 中从 IloBoolVarArray 解析到 Bool 的问题