Ошибкa возникает из-за того, что вы пытаетесь обращаться к символу в строке "chars" как к элементу массива. Вместо этого, вам нужно использовать метод charAt() для получения символа по указанному индексу. Вот исправленная версия вашего кода:
import java.util.Scanner;
public class grafika {
public static void main(String[] args) {
String chars = "ёйцукенгшщзхъфывапролджэячсмитьбю";
int charsLen = chars.length() - 1;
Scanner console = new Scanner(System.in);
System.out.println("Введите количество букв: ");
int outLen = console.nextInt();
String out = "";
for (int counter = 0; counter < outLen; counter++) {
out += chars.charAt((int) Math.round(Math.random() * charsLen));
}
System.out.println(out);
}
}
В этой версии кода мы заменили chars[(int) Math.round(Math.random() * charsLen)] на chars.charAt((int) Math.round(Math.random() * charsLen)) для получения символа из строки "chars" по индексу. Кроме того, мы также исправили объявления переменных "charslen" и "outlen".
ошибка в строчке out += chars[(int) Math.round(Math.random()*charslen)];