Код: Выделить всё
private static NumberFormat genIntFormat() {
NumberFormat numberFormat = NumberFormat.getIntegerInstance(Locale.ENGLISH);
numberFormat.setGroupingUsed(false);
return numberFormat;
}
public static final NumberFormat INT_FORMAT = genIntFormat();
public static int toUnsignedInt(float f) {
int i;
try {
i = Integer.parseUnsignedInt(INT_FORMAT.format(Math.floor(f)));
} catch (NumberFormatException e) {
i = 0;
}
return i;
}
< /code>
Однако для меня это кажется слишком ломким. Я уверен, что есть лучший способ сделать это, но я не могу найти что -либо в Интернете, и Chatgpt просто извергает глупость, как всегда. Есть ли лучший способ конвертировать, и что это? «Лучше» в моем случае означает быстрее. < /P>
Изменить: < /p>
[list]
[*]0.0f
[*]
Код: Выделить всё
-1.5f
[*]
Код: Выделить всё
NaN
[*]
Код: Выделить всё
1.7f
[*]
Код: Выделить всё
3e+9f
[*]
Код: Выделить всё
1e+12f
[/list]
Подробнее здесь: https://stackoverflow.com/questions/794 ... ed-integer