我想寫一個程序,存儲錢在一個變量, 所以我使用Bigdecimal類型,因爲它被其他memebers建議在這裏.. 但我想要做的是這個..用戶可以輸入什麼都這樣,他希望的意思是說,他可以輸入處理錢和大十進制
24
or
24.0
or
24.00
所以你可以看到,我給用戶的靈活性,在自己方便的輸入。但最後變量將存儲在一個數組(BigDecimal數組)中,所以當它存儲時,我只想存儲2個十進制的地方。爲什麼我這麼說,如果用戶輸入24我想存儲24.00 NOT 24或24.0 JUST 24.00或者如果他輸入24.00那麼這將被存儲而無需對其做任何修改..如何做到這一點.. 示例代碼如下所述。
BigDecimal bala;
BigDecimal balintake;
static BigDecimal[] bal= new BigDecimal[20];
Scanner sc = new Scanner(System.in);
balintake = sc.nextBigDecimal();
bala.setScale(2,RoundingMode.HALF_UP);
bal[0] = bala;
但是這不符合我的要求。
如果我理解正確的話,你更關心什麼得到比獲取存儲顯示,對不對?如果是這樣,你可以控制打印過程中的精度(根據你打印的地方,也就是在控制檯或某個用戶界面中) – Vikdor
@Vikdor嘿,我不得不在後面的bigdecimal數組上進行搜索,採用不同的方法..所以在這一點上,我也需要做同樣的事情給用戶的靈活性,然後轉換爲2位的地方,因爲這是存儲在搜索中。所以一般來說,我試圖使它標準化。 – JackyBoi
你不能簡單地將你的值存儲爲整數,例如'2400'?那麼你只需要擔心從用戶提供的可能的十進制表示形式到這個整數值的轉換。 –