Перейти к следующему символу ()
У меня возникла проблема в моей программе, которая заменяет каждый символ во введенной строке (особенно из args[x]).
Я могу получить первый символ в строке, но я не знаю, как это сделать, - перейти к следующему символу. Я попробовал "ctr++" ниже, но он будет зацикливать только 1-й символ строки.
Результат:
Строка: AEI
Расшифровать: ZZZ
Что мне нужно это:
Строка: AEI
Расшифровать: ZYX
Вот фрагмент моего кода:
for( int a = 0; a < len; a++ )
{
args[x].charAt(ctr);
switch (letter)
{
case 'a': System.out.print("Z"); break; //1
case 'e': System.out.print("Y"); break; //2
case 'i': System.out.print("X"); break; //3
case 'o': System.out.print("W"); break; //4
case 'u': System.out.print("V"); break; //5
case 'A': System.out.print("z"); break; //6
case 'E': System.out.print("y"); break; //7
.
.
.
.
}
ctr++;
}
Буду признателен, если кто-нибудь может помочь.
3 ответа
Ну, ваша проблема в том, что вы никогда не меняете значение letter
, Вам нужно заменить args[x].charAt(ctr)
с letter = args[x].charAt(ctr)
,
Поскольку вы не опубликовали весь код, не совсем ясно, чего вы пытаетесь достичь. Но это то, что может помочь
public class Stackru {
public Stackru(){
}
public static void main( String[] args ){
for( int x = 0, len = ((String)args[0]).length(); x < len; x++ )
{
char letter = args[0].charAt(x);
switch (letter)
{
case 'a': System.out.println("Z"); break; //1
case 'e': System.out.println("Y"); break; //2
case 'i': System.out.println("X"); break; //3
case 'o': System.out.println("W"); break; //4
case 'u': System.out.println("V"); break; //5
case 'A': System.out.println("z"); break; //6
case 'E': System.out.println("y"); break; //7
}
}
}
}
String str = "aei";
for( int a = 0; a < str.length(); a++ )
{
char letter = str.charAt(a);
switch (letter)
{
case 'a': System.out.print("Z"); break; //1
case 'e': System.out.print("Y"); break; //2
case 'i': System.out.print("X"); break; //3
case 'o': System.out.print("W"); break; //4
case 'u': System.out.print("V"); break; //5
case 'A': System.out.print("z"); break; //6
case 'E': System.out.print("y"); break; //7
}
}
Попробуй это. Удачи