Last active
August 29, 2015 14:07
-
-
Save martinusadyh/110b20d422daeb3ce26b to your computer and use it in GitHub Desktop.
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
package id.web.martinusadyh.iso8583.helper; | |
public class DecimalHexBinaryConverter { | |
public static String decimalToHexa(Integer decimalNumber) { | |
return Integer.toHexString(decimalNumber); | |
} | |
public static String decimalToBinary(Integer decimalNumber) { | |
StringBuilder binaryNumber = new StringBuilder(); | |
StringBuilder sbBinary = new StringBuilder(); | |
String binaryString = Integer.toBinaryString(decimalNumber); | |
char[] binary = binaryString.toCharArray(); | |
int counter = 0; | |
// ambil dari index karakter terakhir | |
for (int i=binary.length-1; i>=0; i--) { | |
counter++; | |
sbBinary.append(binary[i]); | |
// reset counter ke nol jika berhasil mengambil 4 digit karakter | |
if (counter == 4) counter = 0; | |
} | |
// 4 adalah panjang karakter tiap blok di binary | |
// ex: dec [100] == binary [0110 0100] | |
for (int i=0; i<4-counter; i++) { | |
if (counter > 0) sbBinary.append("0"); | |
} | |
// sekarang dibalik | |
for (int i=sbBinary.length()-1; i>=0;i--) { | |
binaryNumber.append(sbBinary.toString().charAt(i)); | |
} | |
return binaryNumber.toString(); | |
} | |
public static Integer binaryToDecimal(String binaryNumber) { | |
return Integer.parseInt(binaryNumber, 2); | |
} | |
public static String binaryToHexa(String binaryNumber) { | |
return decimalToHexa(binaryToDecimal(binaryNumber)); | |
} | |
public static Integer hexaToDecimal(String hexaNumber) { | |
return Integer.parseInt(hexaNumber, 16); | |
} | |
public static String hexaToBinary(String hexaNumber) { | |
return decimalToBinary(hexaToDecimal(hexaNumber)); | |
} | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment