简体   繁体   English

使用Java for循环时间转换

[英]for-loop time conversion using java

I'm just new in java.I am trying to convert money to time which is 1 dollar == 3 minutes but minutes-- wont let me display the exact minutes of time in the second loop 我只是java的新手,我试图将钱转换为1美元== 3分钟的时间,但是分钟-不会让我在第二个循环中显示确切的时间分钟

package javaapplication8;

import java.util.Scanner;

public class JavaApplication8 {

    public static void main(String[] args) {


    /*
    1 Dollar = 3 minutes
           */  


    //I am trying to convert money to time which is 1 dollar == 3 minutes but minutes-- 
    //wont let me display the exact minutes of time in the second loop
    int minutes;
    int amount;
    int hour=0;
    int time;

    Scanner in = new Scanner(System.in);
    System.out.println("Please Enter Amount");
    amount = in.nextInt();

        time = amount * 3;

        for (minutes = time; minutes>=59; minutes--)
        {
            minutes = minutes- 59;
            hour = hour+1;

            System.out.println(minutes+"minutes");
            System.out.println(hour+"hour");
         }    
    }
}

So if money == 40 here is the problem: 因此,如果金钱== 40,这就是问题所在:

Please enter amount: 请输入金额:

40 40

61 minutes 61分钟

1 hour 1小时

here lies the problem it should be 2 minutes but because of minutes-- its not, 这就是问题,应该是2分钟,但由于分钟-不是,

1 minutes 1分钟

2 hour 2小时

Your second loop is a weird way of implementing it you should replace minute-- by minute-=60 like so: 你的第二个循环是实现它的奇怪的是,你应该更换minute--通过minute-=60 ,如下所示:

for (minutes = time; minutes>=60; minutes-=60) {
        hour = hour+1;
}

but you could just implement it by using arithmetic: 但是您可以使用算术来实现它:

hour = minute/60;
minute = minute % 60;

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

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