Ich versuche, eine Caesar-Chiffre in Java zu machen, die Sie fragt, welches Wort Sie verschieben möchten und um wieviel. Ich hatte eine außerhalb der Grenzen Ausnahme geworden, aber das fixiert ist, und es ist immer noch nicht funktioniertCaesar Cipher druckt kein endgültiges Array
Hier ist mein Code:
package cipher;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Scanner;
public class mycipher {
public static void main(String[] args) {
ArrayList<Character> finalpro = new ArrayList<Character>();
ArrayList<Integer> modlet = new ArrayList<Integer>();
Scanner consolereader= new Scanner(System.in);
ArrayList<Character> letters = new ArrayList<Character>();
char[] letters2 = {'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j',
'k', 'l', 'm', 'n', 'o', 'p', 'q', 'r', 's', 't', 'u', 'v',
'w', 'x', 'y', 'z'};
for(int i=0; i<letters2.length; i++){
letters.add(letters2[i]);
}
System.out.println("what word would you like to cipher?");
String original = consolereader.nextLine();
System.out.println("how much would you like to shift it by");
int shift = consolereader.nextInt();
ArrayList<Character> userword = new ArrayList<Character>();
for(int i=0; i<original.length();i++){
userword.add(original.charAt(i));
}
for(int i=0; i<userword.size(); i++){
if(userword.get(i)==letters2[i]){
modlet.add(i%shift);
}
}
for(int i=0;i<modlet.size(); i++){
finalpro.add(letters2[modlet.get(i)]);
}
System.out.println(finalpro);
}
}
Können Sie erklären, was nicht funktioniert. –
Es wird nicht das letzte Wort gedruckt –