è chiaro che java non ha il tipo 'unsigned long', mentre possiamo usare long per memorizzare un unsigned data. Quindi, come posso convertirlo in una stringa o semplicemente stamparlo in modo 'non firmato'?Come convertire 'unsigned long' in string in java
7
A
risposta
12
È necessario utilizzare BigInteger sfortunatamente o scrivere la propria routine.
Ecco un Unsigned classe che aiuta con queste soluzioni alternative
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
È possibile utilizzare librerie di terze parti? Guava's UnsignedLongs.toString(long)
fa questo.
4
Come menzionato in un different question su SO, c'è un metodo per che a partire da Java 8:
System.out.println(Long.toUnsignedString(Long.MAX_VALUE)); // 9223372036854775807
System.out.println(Long.toUnsignedString(Long.MIN_VALUE)); // 9223372036854775808
Problemi correlati
- 1. Come convertire unsigned long in stringa
- 2. (lldb) Stampa unsigned long long in hex
- 3. Come convertire il char unsigned * in std :: string in C++?
- 4. unsigned long long int pow
- 5. Come convertire DataInputStream in String in Java?
- 6. Come convertire un long in int in Java vs. swift?
- 7. Come convertire/eseguire il cast da long a String?
- 8. Impossibile convertire 'vector <unsigned long>' per Python oggetto
- 9. come convertire BigInteger a String in Java
- 10. Come convertire String to Reader in java
- 11. Come convertire la stringa in long
- 12. Doppio a `unsigned long long` provoca memoria (pila?) La corruzione
- 13. Il modo migliore per convertire un intero con segno in un unsigned long?
- 14. Come convertire Long in Int in Kotlin?
- 15. Unsigned long con valore negativo
- 16. Come posso convertire da int a Long in Java?
- 17. Come stampare un long int unsigned con printf in C?
- 18. come convertire ascii in unsigned int
- 19. Come convertire 'long long' (o __int64) in __m64
- 20. Perché non è common_type <long, unsigned long> :: type = long long?
- 21. Come convertire string [] in ArrayList?
- 22. Come convertire String in JsonObject
- 23. Come convertire Guid [] in String?
- 24. Come convertire Writer in String
- 25. Come mod2^64 in long in Java?
- 26. La differenza tra unsigned long e UINT64
- 27. Come convertire String in Hex e Hex in String?
- 28. Java: Come convertire String [] in List o Set
- 29. Come convertire RDD [(String, String)] in RDD [Array [String]]?
- 30. JSON String array in Java String lista
che cosa vuoi dire "stamparlo in modo non firmato"? – erencan