import java.util.Scanner;
public class Oppish_Coder2 {
public static void main(String[] args) {
String s = "bcdfghjklmnpqrstvwxz";
String ss = "aeiouy";
System.out.println("Enter line to encrypt: ");
Scanner sc = new Scanner (System.in);
String uncoded = sc.next();
System.out.println("Encrypted line: ");
for (int i = 0; i < uncoded.length(); i++){
for (int ii = 0; ii < s.length(); ii++){
if (uncoded.charAt(i) == s.charAt(ii)){
System.out.print(uncoded.charAt(i) + "op ");
}
else {
for (int iii = 0; iii < ss.length(); iii++){
if (uncoded.charAt(i) == ss.charAt(ii)){
System.out.print(uncoded.charAt(i) + " ");
}
}
}
}
}
sc.close();
}
}
Я работал над этим проектом для удовольствия и выключаться, но в последнее время я чувствую, как будто я очень близок к тому, чтобы его работа, однако ошибка в настоящее время и я не уверен, как это исправить. Цель кода - добавить «op» к концу любых согласных и «» до конца гласных. Это было вдохновлено детским способом говорить в коде, так что только вы и друг знали, что говорит другой. Любая помощь будет принята с благодарностью, спасибо!проект шифрования Java (java.lang.StringIndexOutOfBoundsException)
Я не думаю, что ваш код, как и опубликованный, находится в любом месте рядом с работой. Потратьте некоторое время, чтобы рассмотреть логику того, что вы пытаетесь сделать, и исправить свои петли соответственно. Я бы рекомендовал прочитать учебное пособие, в котором будут описаны инструкции 'break' и' continue'. –
В третьем цикле for вы сравниваете 'uncoded.charAt (i) == ss.charAt (ii)' вместо 'uncoded.charAt (i) == ss.charAt (iii)'. Более того, этот цикл не должен быть вложенным. Слово совета; используйте разные буквы как переменные цикла. – Jyr