public class Program {
public static void main(String[] args) {
StringBuilder alphabet = new StringBuilder("абвгдеёжзийклмнопрстуфхцчшщъыьэюя ");
String text= "привет меня зовут антон я программист Java";
StringBuilder textResult = new StringBuilder(text);
for(int i =0; i< text.length(); i++)
{
textResult.insert(i, alphabet.indexOf(____text[i]____ // Здесь выдает ошибку Array type expected; found java.lang.String));
}
System.out.print(textResult);
}
}
В коде я расписал где эта ошибка и что пишет. Суть программы - менять буквы в тексте на их порядковый номер в алфавите.
у тебя text типа String - это не массив!!! можно сделать примерно так:
public class Program {
public static void main(String[] args) {
StringBuilder alphabet = new StringBuilder("abcdef");
String text= "abc def adddd ef";
String text1 = text.replaceAll(" ", "");
char[] ch = text1.toCharArray();
StringBuilder textResult = new StringBuilder();
for(int i = 0; i < ch.length; i++)
{
textResult.append(alphabet.indexOf(String.valueOf(ch[i])) + 1);
}
System.out.print(textResult);
}
}
StringBuilder
тут не имеет смысла использовать, используйте обычную строку. Также можете использовать метод substring
, чтобы получить i-й символ строки text
:
String alphabet = "абвгдеёжзийклмнопрстуфхцчшщъыьэюя ";
String text= "привет меня зовут антон я программист Java";
StringBuilder textResult = new StringBuilder(text);
for(int i = 0; i < text.length(); i++) {
textResult.insert(i, alphabet.indexOf(text.substring(i, i+1)));
}
System.out.println(textResult);
Тест на ideone.
Виртуальный выделенный сервер (VDS) становится отличным выбором
Помогите распарсить музыку на стене в ВК(Делаю ленту новостей группы
Когда я пытаюсь сделать SystemloadLibrary("MyLib"); в андроид в статик блоке происходит следующее:
Надо сделать таймер вида HH:MM:SS на Java обратного отсчета по такому принципу действия: