64-бітний подвійний може представляти ціле число +/- 2 53 точно
Враховуючи цей факт, я обираю використовувати подвійний тип як єдиний тип для всіх моїх типів, оскільки моє найбільше ціле число не підписане 32-бітним.
Але тепер я повинен надрукувати ці псевдо цілі числа, але проблема полягає в тому, що вони також змішуються з фактичними парними.
Тож як я можу друкувати ці подвійні файли на Java?
я намагався String.format("%f", value)
, що близько, за винятком того, що я отримую багато нульових значень для малих значень.
Ось приклад виходу %f
232.00000000 0,18000000000 1237875192.0 4,5800000000 0,00000000 1.23450000
Що я хочу:
232 0,18 1237875192 4,58 0 1.2345
Звичайно, я можу написати функцію, щоб обрізати ці нулі, але це велика втрата продуктивності через маніпуляції з String. Чи можу я краще зробити інший формат коду?
EDIT
Відповіді Тома Е. та Джеремі С. неприйнятні, оскільки вони обидва довільно обирають до 2 знаків після коми. Будь ласка, зрозумійте проблему, перш ніж відповісти.
EDIT 2
Зверніть увагу, що String.format(format, args...)
це залежить від місцевості (див. Відповіді нижче).
System.out.println("YOUR STRING" + YOUR_DOUBLE_VARIABLE);