Int sayılarını onaltılık dize olarak biçimlendirmek istiyorum. System.out.println(Integer.toHexString(1));
, 1
numaralı resmi yazdırır, ancak bunu 0x00000001
olarak istiyorum. Bunu nasıl yaparım?Sayılar altı çizgilere nasıl biçimlendirilir?
11
A
cevap
25
sözdizimi Java'nın Formatter sınıfına belgelenmiş biçimlendirmeyi itibaren bu
System.out.println(String.format("0x%08X", 1));
13
Bir tamsayı onaltılık dize olarak biçimlendirmek için String.format kullanabilirsiniz. sıfırlarla ped olup, toplam genişliği 8. 1 yapmak
System.out.println(String.format("0x%08X", 1));
size hex dönüştürülür. Yukarıdaki satır verir: 0x00000001
ve
System.out.println(String.format("0x%08X", 234));
verir: 0x000000EA
0
Bir PrintStream üzerinde java.util.Formatter veya the printf method bir kullanabilir.
Integer intObject = Integer.valueOf(1);
String s = String.format("0x%08x", intObject);
System.out.println(s);
1
deneyin toHexString işlevi, 8 uzunluğunda bir '0' ile çalışır. Eğer "0x" her zaman başlangıçta olacaksa, sadece o dizeyi baştan sona yapıştırır.
0
ben de yakından Java bilmiyorum ama ped çıkışını öğrenebileceğinden bir yolu olmalı:
olası yinelemesi [java'daki tam sayıdan nasıl hex değeri elde edilir] (http://stackoverflow.com/questions/5258415/how-to-get-hex-value-from-integer-in-java) – durron597