javaはunsigned long型を持たないことは明らかですが、unsignedデータを格納するためにlongを使用できます。次に、それを文字列に変換するか、単に「符号なし」の方法で印刷することはできますか?'unsigned long'をJavaの文字列に変換するには
7
A
答えて
12
残念ながら、BigIntegerを使用するか、独自のルーチンを記述する必要があります。ここで
は、これらの回避策
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
サードパーティのライブラリを使用することができますに役立ちますUnsignedクラスですか?グアバのUnsignedLongs.toString(long)
はこれを行います。
4
SO上different questionで述べたように、Javaの8で始まるそのための方法があります:
System.out.println(Long.toUnsignedString(Long.MAX_VALUE)); // 9223372036854775807
System.out.println(Long.toUnsignedString(Long.MIN_VALUE)); // 9223372036854775808
関連する問題
- 1. 任意のサイズのunsigned long intをバイト文字列に変換する
- 2. ASCII文字列をlong longに変換する
- 3. unsigned char配列をbase64文字列に変換する
- 4. 符号なしlong longからunsigned intに変換する
- 5. unsigned long longをwchar_t *に変換して連結します。
- 6. ユニコード文字列をintまたはlongに変換する
- 7. "unsigned char *"を "char *"(そして文字列)に変換する
- 8. 文字列をLongに変換するときのScala NumberFormatException?
- 9. 文字列をJavaの文字列配列に変換する
- 10. unsigned long long VS unsigned long long int
- 11. Javaバイト配列(long値)をC++でlongに変換する
- 12. 文字列をstrftimeからint/longに変換する
- 13. jsonの文字列をJavaの文字列に変換する
- 14. intをunsigned long longにキャスト
- 15. 文字列をJavaの文字列配列に変換するには?
- 16. HTTP文字列のJSONオブジェクトに変換するJava文字列
- 17. Javaの文字列をバイト配列に変換するには?
- 18. Jsonでlong xmlの文字列をJavaで変換する方法
- 19. unsigned char(配列)をunsigned int(配列)に変換する
- 20. const unsigned char *文字列またはconst char *への変換/ *
- 21. 関数を使用してsprintfなしでlong long intを文字列に変換する
- 22. ベクトルをjavaの文字列に変換するには?
- 23. イメージをjavaのbase64文字列に変換するには?
- 24. 文字列をJavaの日付に変換するには?
- 25. 文字列をJavaのDOMドキュメントオブジェクトに変換するには?
- 26. 文字列をJavaの関数に変換するには?
- 27. Java/Scala - 文字列を長文に変換する方法は?
- 28. Java文字列をWindows-1258に変換
- 29. Java:文字列を日付に変換
- 30. wchar_tにunsigned longを変換してください
あなたは「符号なしの方法でそれを印刷」何を意味するのですか? – erencan