Итак, я работаю над методом, который должен сочетать набор двоичных чисел. По какой-то причине я получаю исключение. Метод работает, когда numberOfBits равно 4, но он дает ошибку, когда я двигаюсь до 7. Я не совсем уверен, почему он это делает, и ничего до сих пор не исправил его. Есть предположения? Ошибка указана в коде ниже. Любая помощь будет оценена, спасибо.Получение ошибки исключения
Exception in thread "main" java.lang.NumberFormatException: For input string: "111001101100111"
at java.lang.NumberFormatException.forInputString(NumberFormatException.java:48)
at java.lang.Integer.parseInt(Integer.java:461)
at java.lang.Integer.valueOf(Integer.java:554)
at MP1.combine(MP1.java:96)
at MP1.shiftRight(MP1.java:76)
at MP1.main(MP1.java:131)
public Integer combine(Register register, int numberOfBits) {
String C1 = Integer.toBinaryString(register.C);
String A1 = Integer.toBinaryString(register.A);
String Q1 = Integer.toBinaryString(register.Q);
C1 = String.format("%1s", C1).replace(' ', '0');
A1 = String.format("%" + numberOfBits + "s", A1).replace(' ', '0');
Q1 = String.format("%" + numberOfBits + "s", Q1).replace(' ', '0');
String comboS = C1 + A1 + Q1;
//Says error is here (below)
Integer comboI = Integer.valueOf(comboS);
return comboI;
}
Спасибо за тщательный ответ и способ обойти его. Я очень ценю это. – cfrank12
@ user3196352 Добро пожаловать. –