Гость
Форумы / Android [игнор отключен] [закрыт для гостей] / преобразование вещественного числа в строку и обратно / 4 сообщений из 4, страница 1 из 1
10.12.2021, 13:12
    #40118919
Belotsky Serge
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование вещественного числа в строку и обратно
Добрый день!

Хотелось бы понять почему функция format :
Код: java
1.
            sFloatValue = String.format('%f',dV);


преобразует в число с запятой (','), а обратная ей функция
Код: java
1.
            dV = Double.parseDouble(sFloatValue)


требует, чтобы там была точка ('.') (возникает Exception) ?
Весь этот код выполняется в одном приложении. Locale явно не указывается (default).
...
Рейтинг: 0 / 0
10.12.2021, 13:29
    #40118929
Belotsky Serge
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование вещественного числа в строку и обратно
Belotsky Serge,

добавлю, что
Код: java
1.
Double.toString(dV)

- преобразует число в строку с точкой ('.')
...
Рейтинг: 0 / 0
10.12.2021, 15:38
    #40119005
chpasha
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование вещественного числа в строку и обратно
Belotsky Serge
Хотелось бы понять почему функция format :

String.format без указания локали форматирует в формате дефолтной локали, отсюда запятые, точки и пр. А double ожидает в фиксированном формате с точкой в качестве десятичного разделителя. Для того чтобы String.format форматировал в совместимом формате, нужно в него передавать Locale.ROOT
...
Рейтинг: 0 / 0
10.12.2021, 16:48
    #40119049
Belotsky Serge
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
преобразование вещественного числа в строку и обратно
chpasha
Belotsky Serge
Хотелось бы понять почему функция format :

String.format без указания локали форматирует в формате дефолтной локали, отсюда запятые, точки и пр. А double ожидает в фиксированном формате с точкой в качестве десятичного разделителя. Для того чтобы String.format форматировал в совместимом формате, нужно в него передавать Locale.ROOT
Спасибо! Догадывался, что все это зависит от локали. Но не понимал, как заставить формат возвращать в том же формате, что и parseDouble.
...
Рейтинг: 0 / 0
Форумы / Android [игнор отключен] [закрыт для гостей] / преобразование вещественного числа в строку и обратно / 4 сообщений из 4, страница 1 из 1
Целевая тема:
Создать новую тему:
Автор:
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]