Sto provando a convertire un paio di stringhe binarie in int. Tuttavia non converte tutte le mie stringhe binarie, lasciandomi un'eccezione java.lang.NumberFormatException. Ecco il mio codice di prova con 3 stringa binaria:java: converte stringa binary in int
public class Bin {
public static void main(String argvs[]) {
String binaryString ;
binaryString = Integer.toBinaryString(~0);
//binaryString = Integer.toBinaryString(~1);
//binaryString = "1010" ;
int base = 2;
int decimal = Integer.parseInt(binaryString, base);
System.out.println("INPUT=" + binaryString + " decimal=" + decimal) ;
}
}
Se converto il "1010" funziona benissimo, ma quando provo a convertire uno degli altri due ottengo l'eccezione. Qualcuno può spiegarmi perché è così?
Acclamazioni
Ad una ipotesi, è perché 'Integer.toBinaryString' non è firmato e' Integer.parseInt' è firmato. –
Intendi davvero "cast" qui? –