2015-08-13 53 views
1

我一直在想辦法返回一個整數值並將其轉換爲2位有效數字。這是我的問題的描述。如何在Java中返回一個整數到2個有效數字?

我有一個名爲getValue()的方法,它返回一個名爲value的int類型的實例變量。 現在,在一個單獨的類的方法定義中,我想調用方法getValue(),返回的值是2個有效數字(1將是01,2將是02等)。

這是我相當混亂的嘗試:

return (String.format("%02d",(hours.getValue().toString()))+":"+String.format("%02d", (hours.getValue().toString()))); 

hoursminutes是獨立的類的實例變量。

當我運行一個單獨的測試程序時,出現一個錯誤,說ClockDisplay.java:32: error: int cannot be dereferenced。發生此錯誤後,我嘗試將方法getValue()的返回類型更改爲String,但仍然出現一些奇怪的錯誤。

有人可以幫我做這個嗎? 謝謝

+0

兩個有效數字表示不超過兩個前導非零數字,例如1234 => 1200和1.234 => 1.2在您的情況下,小時數和分鐘數不能超過2個有效數字。我假設你的意思是零填充數字至少兩位數。 –

回答

0

你不需要hours.getValue()的toString(),你只需要hours.getValue(),因爲你指定的 「%d」這意味着它需要一個Integer。正如你所說的,hours.getValue()將返回一個整數,所以沒有必要說.toString()(如果你認爲你把它轉換成字符串的方式)。

0

return(String.format(「%02d」,Integer.valueOf(hours.getValue())));

0

打印HH:mm格式,你可以做

return String.format("%02d:%02d", hours.getValue(), minutes.getValue()); 
相關問題