繁体   English   中英

Java不同情况划分

[英]Java different situation division

如何在Java中划分两个数字并在两种不同情况下获得不同类型:

  • 如果可能,获取 int(例如 6 / 2)
  • 否则,得到 float(6 / 4)

像这样的代码:

int a;
int b;
float div = a / b;

a 和 b 是整数。 (例如,如果可以得到2,我不想得到2.0)

如果除法是整数,您也可以只检查模运算符。

int a = 6;
int b = 4;
if(a % b == 0) {
    System.out.print(a/b);
}
else  {
    System.out.print((float)a/b);
}

如果除法 a % b 等于 0,则除法是整数。 如果不是,那么它是一个分数,您可以将操作数(a 或 b)中的一个转换为浮点数,以获得表示分数结果的小数。

输出:

1.5

尝试将float转换为int并比较结果,如果相同,则打印整数,否则,使用浮点数:

public class Main {
    public static void main(String[] args) {
        int a = 6;
        int b = 3;
        getDivisionResult(a, b);
        b = 4;
        getDivisionResult(a, b);
    }
    private static void getDivisionResult(int a, int b) {
        float div = (float) a / b;
        int rounded = (int) div;
        if(rounded == div)
            System.out.println(rounded);
        else
            System.out.println(div);
    }
}

输出:

2
1.5

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM