Я хочу отформатировать число без префикса (или того же префикса) для положительных и отрицательных чисел.Java NumberFormat с эквивалентным отрицательным и положительным рисунком
В спецификации NumberFormat указано, что вы можете указать поднабор для положительных чисел и дополнительный шаблон для отрицательных чисел, разделенных точкой с запятой.
Каждый подшаблон имеет префикс, числовую часть и суффикс. Отрицательный подшаблон является необязательным; если отсутствует, то положительный подшаблон с префиксом локализованного знака минус ('-' в большинстве мест) используется как как отрицательный подшаблон. То есть, только «0,00» эквивалентно «0,00; -0,00».
Это работает до тех пор, пока положительные и отрицательные подформы имеют различные префиксы или суффиксы. Если они совпадают, по умолчанию используется поведение по умолчанию со знаком минус.
То, что я хочу, это формат:
- +1 как: 01
- -1 как: 01
Я знаю, что я могу использовать Math.abs(), который не так просто в среде JSP/EL, и это чистая проблема форматирования, поэтому это должно быть сделано в JSP, но это не совсем так. Я не мог найти никакого намека на документацию об этом поведении. Когда я прочитал выше, я думаю, что как только я укажу какой-либо отрицательный поднабор, он будет использоваться. Это не так.
Кто-нибудь знает что-нибудь об этом? Я могу записать ошибку с Oracle, но сначала хочу проверить, если я что-то упустил.
Hi Peter, спасибо. Хороший момент, я не знал об этом методе. Однако, как я уже сказал, я хочу сделать это в JSP (без скриптлета), и мне показалось, что подзадача с точкой с запятой должна быть хитростью. Я все еще думаю, что это ошибка. Очевидно, что ошибка заключается в анализе и применении шаблона к внутренним структурам, а не в логике вывода. – marc82ch