2015-11-02 16 views
1

我試圖將HH:MM轉換爲只有幾分鐘的時間,並且沒有運氣。任何幫助都會很棒。使用類似於我已經完成的代碼將HH:MM轉換爲分鐘

import java.util.Scanner; 

public class taskA { 

    public static void main(String[] args) { 

     Scanner scanner = new Scanner(System.in); 

     System.out.println("Please Specify your time HH:MM"); 
     String Time = scanner.next(); 
     System.out.println("Your time is: " + Time); 


     String finalTime = (Time * 60); 
     System.out.println("your final time in minutes is :" + finalTime); 
    } 
} 
+0

使用'parseInt'將其轉換爲int。你有什麼是不正確的。您還需要使用':'分割,然後執行邏輯將小時轉換爲分鐘並將其添加到'mm'等。或者更好的方法是使用'nextInt'從掃描器讀取int – sam

回答

2

這裏是一個應該讓你開始一個例子:

Scanner scanner = new Scanner("12:34").useDelimiter(":"); 
System.out.println(scanner.nextInt()); 
System.out.println(scanner.nextInt()); 

以上輸出:

12 
34 
0
public static void main(String[] args) { 
    Scanner scanner = new Scanner(System.in); 

    System.out.println("Please Specify your time HH:MM"); 
    String input = scanner.nextLine(); 
    String[] time = input.split("\\:"); 
    int hour = Integer.parseInt(time[0]); 
    int minutes = Integer.parseInt(time[1]); 
    System.out.println("Your time is: " + hour + ":" + minutes); 


    int finalTime = (minutes + hour * 60); 
    System.out.println("your final time in minutes are :" + finalTime); 
} 

這應該工作,你想要的方式。 你問題是你需要使用整數而不是字符串。 所以這段代碼做的是讀取下一行並將其保存在「輸入」中。下一行創建一個字符串數組,其中的輸入被分割,其工作方式如下:方法input.split(「\:」)接受字符串「輸入」並接收所有字符,直到「:」出現,然後它將這些字符保存在Array的第一個索引(time [0])中,然後將剩餘的字符保存到下一個索引中,依此類推。現在你知道小時在第一個索引和第二個分鐘,你可以將它們從字符串轉換爲整數,然後將小時乘以60,然後得到分鐘。 我希望我能幫助你,如果我犯了一些錯誤(不是英語),我很抱歉。

相關問題