Выдаёт ошибку при компилиции, пока не дошел до switch всё идёт нормально, а потом ошибка. Где моя ошибка?
public class Massivalg {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int count = 0;
Random rand = new Random();
System.out.println("Введите кол-во ячеек массива");
count = s.nextInt();
int[] ar = new int[count];
if (count <= 5) {
for (int i = 0; i < count; i++) {
System.out.println("Введите число массива " + i);
ar[i] = s.nextInt();
}
for (int i = 0; i < ar.length; i++) {
System.out.println(" " + i);
}
} else {
for (int i = 0; i < 5; i++) {
System.out.println("Введите число массива " + i);
ar[i] = s.nextInt();
}
for (int i = 0; i < ar.length; i++) {
}
for (int i = 6; i < count; i++) {
System.out.println("Следуюшие числа заполняться автоматом ");
ar[i] = rand.nextInt();
System.out.println(" " + i);
}
}
System.out.println("Массив заполнен :) \n");
System.out.println("Хотите проверить ячейку массива? \n ");
System.out.println("Если да то введите '+' если нет то '-' \n");
char ch ;
ch = (char) s.nextByte();
switch (ch) {
case '+': {
System.out.println("Введи номер от 0 \n");
int k= s.nextInt();
System.out.println(ar[k]);
break;
}
case '-':
{
System.out.println("Sory");
}
default: System.out.println("Sory");
}
}
}
ch = (char) s.nextByte();
поменять на вариант
ch = s.next().charAt(0);
а лучше пользоваться строками
String string = s.nextLine();
Я немного "почистил" твой код, украсил его и убрал выпадающую ошибку.
Вот что у меня получилось:
import java.util.Random;
import java.util.Scanner;
public class Massivalg {
public static void main(String[] args) {
Scanner s = new Scanner(System.in);
int count = 0;
Random rand = new Random();
System.out.println("Введите кол-во ячеек в массиве");
count = s.nextInt();
int[] ar = new int[count];
if (count < 6) {
for (int i = 0; i < count; i++) {
System.out.println("Введите число для ячейки " + i);
ar[i] = s.nextInt();
}
for (int i = 0; i < ar.length; i++) {
System.out.println(i + " - " + ar[i]);
}
} else {
for (int i = 0; i < 5; i++) {
System.out.println("Введите число для ячейки " + i);
ar[i] = s.nextInt();
}
System.out.println("Следуюшие числа автоматоматически заполнят свободные ячейки массива ");
for (int i = 6; i < count; i++) {
ar[i] = rand.nextInt();
System.out.println(i + " - " + ar[i]);
}
}
System.out.println("Массив заполнен :) \n");
System.out.println("Хотите посмотреть значение в одной из ячеек массива?");
System.out.println("Если да то введите '+' если нет то '-'");
char ch ;
ch = (char) s.next().charAt(0);;
switch (ch) {
case '+': {
System.out.println("Введи номер от 0 до " + count);
int k = s.nextInt();
System.out.println("Число в ячейке " + k + " - " + ar[k]);
break;
}
case '-':
{
System.out.println("Тогда в другой раз");
break;
}
default: System.out.println("Извините, но такой ячейки не существует");
break;
}
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Здравствуйте кидает Exception ConcurrentModificationException на этой строчке for (Transaction t : cgetTransactions())(64 строчка) на 2 итерации
Есть проект на JavaFX, для хранения данных нужно использовать сериализацию в JAXBДля этого нужно использовать XML
Несколько сбоев было но не могу понять изза чегоВзгляните: