Troppa grazia Sant'Antonio! Faceva schifo usare i metodi di Integer che fanno già tutto quanto richiesto?
codice:
public static String toStrangeString(int num) {
int[] temp = toStrangeIntArray(num);
return temp[0]+","+temp[1];
}
public static int[] toStrangeIntArray(int num) {
// converto in binario
String binary = Integer.toBinaryString(num);
//aggiungo i leading-zeroes
while (binary.length() < 16) {
binary = "0"+binary;
}
//splitto e costruisco l'array
int[] parsed = {Integer.parseInt(binary.substring(0,8),2), Integer.parseInt(binary.substring(8),2)};
return parsed;
}