如何使用double划分java而不是获取小数

时间:2017-09-28 17:34:23

标签: java eclipse

我需要使用扫描仪对象将秒数转换为数年和数天。我有答案,但我有小数,我需要摆脱。我认为摆脱所有的零会这样做,但它没有用。

import java.util.Scanner;

public class Homework2_7 {

    public static void main(String[] args) {
        // create scanner object
        Scanner input = new Scanner(System.in);
        //tell user to input data
        System.out.print("enter a value for minutes:");
        double minutes = input.nextDouble();

        //equation
        System.out.print( minutes / 5256e2 + " years and " + ( minutes % 5256e2 ) / 144e1 + " days.");
    }

}
  

输入分钟值:1e9

     

1902.5875190258753年和214.44444444444446天。

3 个答案:

答案 0 :(得分:0)

只需将最终数字转换为整数,即可删除小数点。

答案 1 :(得分:0)

您可以直接使用Math.round()。

System.out.print(Math.round(minutes / 5256e2) + " years and " + Math.round( minutes % 5256e2  / 144e1) + " days.");

答案 2 :(得分:0)

如果您不想进行舍入,则可以在打印时使用String.format省略小数。

System.out.println(String.format("%.0f years and %.0f days.",
                                 minutes / 5256e2,
                                 (minutes % 5256e2) / 144e1));