對我的要求是,用戶應該能夠從一種形式(數量將是一個字符串)輸入任何有效的數字。應用程序應使用美式格式的逗號來格式化字符串數字,而不進行任何四捨五入。這個格式化的數字將打印在一封信中,郵寄給客戶。大多數數字格式化程序會在指定的精度之後對數字進行四捨五入。這在Java中是必需的,但任何語言的任何算法都可以。我可以將它編碼到Java。如何格式化沒有四捨五入的字符串數字?
例子:
Input Output -1.0 -1.0 123 123 1234 1,234 123456 123,456 -123456 -123,456 -123456.01 -123,456.01 1234.79999999 1,234.79999999 1234567.79999999 1,234,567.79999999 -1234567.79999999 -1,234,567.79999999
有使用的DecimalFormat爲回答這個問題一個問題:Add commas (grouping separator) to number without modifying decimals?
如果如下定義它,那麼你就被限制爲2位小數。如果增加格式模式中零的數量,那麼小數位數也會增加,但是是固定的。另外,如果你輸入2.1,你會得到2.10。我需要2.1。如果您輸入11220.999,那麼結果將是11,221.00。我需要11220.999。
DecimalFormat decimalFormat = new DecimalFormat("#.00");
的可能重複的[?添加逗號(分組分離器)與數而無需修改小數](HTTP://計算器。com/questions/15328647/add-commas-grouping-separator-to-number-without-modifying-decimals) –
@PhamTrung這是一個重複我相信 –
@PhamTrung我需要更多的「原樣」格式。如果你將格式模式定義爲「#.0000」,那麼2.1會給你2.1000。我需要2.1。 –