Я пытаюсь зашифровать сообщение и после того, как зашифровано письмо, зашифрованный банк букв смещается из метода innerRotorClockWise. Когда я это называю, я получаю вывод ниже. (сообщение в этом случае - всего одна буква) Я пытаюсь просто вернуться, пока он меняет банк. Вы, ребята, знаете, почему это происходит? КоличествоЗачем это делать, если я
Внутренний индекс: 20
Внутренний Порядковый номер: 20 21
Внутренний Порядковый номер: 20 21 22
Внутренний Порядковый номер: 20 21 22 23
Внутренний Порядковый номер: 20 21 22 23 24
Внутренний индексный номер: 20 21 22 23 24 25
Внутренний Порядковый номер: 20 21 22 23 24 25 26
Когда я не вызвал метод я получаю:
Внутренний номер индекса: 20
for(int i = 0; i < encryptMessageArray.length; i++){
for(int j = 0; j < innerRotorClockWise.length; j++){
if(encryptMessageArray[i].equals(innerRotorClockWise[j])){
indexNumber = indexNumber + j + " ";
//encrypt the first letter
System.out.println("");
System.out.println("Inner Index Number: " + indexNumber);
System.out.println("");
innerRotorClockWise(); //change theencrypted letter bank
// repeat
Это метод innerRotorClockWise.
public void innerRotorClockWise(){
int lastIndex = innerRotorClockWise.length - 1;
String oldLast = innerRotorClockWise[lastIndex];
for (int i = lastIndex; i != 0; i--)
innerRotorClockWise[i] = innerRotorClockWise[i - 1];
innerRotorClockWise[0] = oldLast;
Ну, я вижу 'for loop', так что это может быть причиной, в зависимости от вашего состояния. Используйте отладчик, чтобы узнать, что там происходит. Нам не хватает, чтобы воспроизвести это, вы можете написать [mcve] и ожидаемое поведение – AxelH