Требования: преобразовать строку (строка имеет только один десятичный) для плавания для выполнения вычислений, преобразовать результат в строку (сохранить один десятичный)
Прямая загрузка кода:
float f1 = 0.1f; String a1 = "1,5"; System.out.println (float.parsefloat (a1)+f1);
Ответ: 1.6
float f1 = 0.1f; String a1 = "1,6"; System.out.println (float.parsefloat (a1)+f1);
Ответ: 1.7
Честно говоря, вначале я чувствовал, что код в порядке. Я попробовал много струн с 0,1, но все они были правильными.
Однако, когда A1 = "1,7", возникает проблема, результат вывода: 1,8000001
Гм? Есть ли проблема с методом преобразования? Это рутина, чтобы бродить по Интернету в течение длительного времени.
Это может быть рассмотрено только из количества сохраняемых цифр и точности. Итак, я обнаружил DecimalFormat
0 Число
# Число, не считая 0
Полем Заполнитель для десятичного сепаратора
, заполнитель для группового разделителя
; Разграниченный формат.
- отрицательный префикс по умолчанию.
% умножено на 100 и отображается в процентах
float f = 0.1f; string max = "1,7"; decimalformat df = new DecimalFormat ("#######.Результаты: 1.8
ОК, проблема решена!
Приведенный выше метод операции Java String для плавания для плавания - это все контент, которым я делюсь с вами. Я надеюсь, что вы можете дать вам ссылку, и я надеюсь, что вы сможете поддержать Wulin.com больше.