ясно, что java не имеет типа «unsigned long», в то время как мы можем использовать long для хранения неподписанных данных. Тогда как я могу преобразовать его в String или просто распечатать его «без знака»?Как преобразовать «unsigned long» в строку в java
7
A
ответ
12
К сожалению, вам необходимо использовать BigInteger или написать собственную процедуру.
Вот Unsigned класса, который помогает с этими обходными
private static final BigInteger BI_2_64 = BigInteger.ONE.shiftLeft(64);
public static String asString(long l) {
return l >= 0 ? String.valueOf(l) : toBigInteger(l).toString();
}
public static BigInteger toBigInteger(long l) {
final BigInteger bi = BigInteger.valueOf(l);
return l >= 0 ? bi : bi.add(BI_2_64);
}
3
Вы можете использовать сторонние библиотеки? Guava's UnsignedLongs.toString(long)
делает это.
4
Как уже упоминалось в different question на SO, есть способ, который, начиная с Java 8:
System.out.println(Long.toUnsignedString(Long.MAX_VALUE)); // 9223372036854775807
System.out.println(Long.toUnsignedString(Long.MIN_VALUE)); // 9223372036854775808
Смежные вопросы
- 1. Как преобразовать unsigned long long в double
- 2. Как преобразовать строку в unsigned long в C++?
- 3. Как преобразовать из unsigned char в long
- 4. C++: конвертировать unsigned long long в unsigned long
- 5. Как преобразовать массив без знака в unsigned long long?
- 6. Как преобразовать long в строку без sprintf()?
- 7. unsigned long long vs unsigned long (переносимость)
- 8. Java read двоичный файл (unsigned long long)
- 9. Как объявить unsigned long type в java?
- 10. Преобразование строки в unsigned long long int в C
- 11. Является ли «long unsigned» действительным как «unsigned long» в C?
- 12. Как объявить unsigned long long в Protobuf?
- 13. Явный эквивалент unsigned long long?
- 14. Unsigned long long overflow
- 15. unsigned long long int
- 16. преобразовать строку в unsigned char str
- 17. Как преобразовать строку в unsigned int? с
- 18. Как преобразовать long в строку в C++?
- 19. unsigned long to float?
- 20. преобразование из unsigned long long в unsigned int
- 21. Как преобразовать байты в long в java
- 22. Конвертировать HICON в unsigned long
- 23. Как преобразовать два байтовых массива в unsigned long variable?
- 24. C# - Как преобразовать 10 байтов в unsigned long
- 25. Unsigned Long Long от Double в Swift
- 26. (python) Как преобразовать long в необработанную строку?
- 27. Конвертировать из unsigned long hex в DWORD
- 28. Как преобразовать ByteBuffer в long [] в Java
- 29. Как преобразовать long в int в Java?
- 30. Двоичное представление unsigned long long
что вы имеете в виду «напечатать его в беззнаковое порядке»? – erencan