上週我剛剛開始學習Java,目前正在進行練習。基本上,問題是你需要在軍隊時兩個數字,然後輸出有什麼區別例如格式化數字以獲得軍隊時間(Big Java Ex。4.15)
Please Enter First time : 0900
Please Enter second time: 1730
Result - > 8 hours and 30 minutes
問題的獎金是要確保程序工作,如果第一次比第二大。首先,我要解決的第一部分,繼承人是我迄今爲止
class TimeInterval{
private double timeOne;
private double timeTwo;
public TimeInterval(double timeOne, double timeTwo){
timeOne = this.timeOne;
timeTwo = this.timeTwo;
}
public double getMinutes(){
double minuteDiff = timeTwo - timeOne;
minuteDiff = minuteDiff%60.0;
return minuteDiff;
}
public double getHours(){
double hours = timeTwo - timeOne;
hours = hours - getMinutes();
hours = hours/60.0;
return hours;
}
}
public class DataSet{
public static void main(String [] args){
TimeInterval time = new TimeInterval(0900,1730);
}
}
現在繼承人什麼迷幻。我想用timeOne
作爲我的新對象0900
,但我收到錯誤。它說「整數太長」,這對我來說似乎很有趣,所以我做了一些研究。在我的書的第四章的最後一節,我們談論的格式化的東西,像System.out.printf
,像%d, %f
我看着SO,我找到了一種方法,我可以做這樣的事情
String.format("%05d", yournumber);
這裏你可以在你的號碼前加上5個0。問題是,我不太清楚如何將其實現到我的代碼中。我嘗試設置timeTwo = String.format ...等,但後來因爲它的一個字符串,我不能真的對它做數學。此外,它不會讓我把它轉換成雙後String.format.
我應該如何處理我的問題?
你必須來自美國,24小時時間被稱爲[軍事時間](https://en.wikipedia.org/wiki/Military_time)。世界上大部分地區都是使用12小時制和24小時制的「雙語」,前者用於休閒場合,後者用於半導體火車時刻表。所以最好使用術語「24小時制」。 –
啊也許正式。我在加拿大這樣稱呼,沒有人理解我。 –
引用維基百科的文章:「它在美國被稱爲軍事時間[4],英語爲加拿大的語言,還有其他一些國家[1],其中12小時的時鐘仍占主導地位。」涵蓋了地球上74億人口中的0.4% –