Форум программистов, компьютерный форум, киберфорум
Java SE (J2SE)
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 5.00/8: Рейтинг темы: голосов - 8, средняя оценка - 5.00
14 / 2 / 0
Регистрация: 29.09.2018
Сообщений: 246

Ошибка в switch

06.11.2018, 21:00. Показов 2092. Ответов 25
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
import java.util.Scanner;
public class Program
{
    public static void main(String[] args) {
        Scanner m = new Scanner(System.in);
        int n = m.nextInt();
        switch (n){
            case 2:
               int[][] mat ={{},{}};
               break;
            case 3:
               int[][] mat ={{},{},{}};
               break;
            case 4:
               int[][] mat ={{},{},{},{}};
               break;
        }
        
        for(int i=0;i<n;i++){
            for(int c=0;c<n;c++){
                
            }
        System.out.println();
        }
    }
}
Насколько я понял такое ощущение что break не работает и программа пытается создать сразу несколько массивов. А я хочу чтобы она создавала только один в зависимости от значения n . Объясните что я сделал не так и как исправить
Миниатюры
Ошибка в switch  
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
06.11.2018, 21:00
Ответы с готовыми решениями:

Switch ошибка
на старте x=1610, но base_1610(); выполняется кучу раз, похоже что x каким-то образом принимает все значения case что есть... Как это...

Ошибка в switch
Подскажите пожалуйста почему выскакивает ошибка на строчке case 2 #include &lt;iostream&gt; #include &lt;locale&gt; #include...

Ошибка с оператором switch
Почему он не признает команду res?и программа не работает string a, res; Console.Write(&quot;Введiть...

25
230 / 199 / 71
Регистрация: 21.10.2016
Сообщений: 449
09.11.2018, 09:29
Студворк — интернет-сервис помощи студентам
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
import java.util.Scanner;
public class Program
{
    public static void main(String[] args) {
        Scanner m = new Scanner(System.in);
        int n = m.nextInt();
        int[][] mat;
        switch (n){
            case 2:
               mat = new int[][]{{},{}};
               break;
            case 3:
               mat = new int[][]{{},{},{}};
               break;
            case 4:
               mat = new int[][]{{},{},{},{}};
               break;
        }
        
        for(int i=0;i<n;i++){
            for(int c=0;c<n;c++){
                
            }
        System.out.println();
        }
    }
}
Bash
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
const@mate ~/progs $ javac Program.java
const@mate ~/progs $ java Program
2
 
 
const@mate ~/progs $ java Program
3
 
 
 
const@mate ~/progs $ java Program
4
 
 
 
 
const@mate ~/progs $ java Program
1
 
const@mate ~/progs $
Цитата Сообщение от JIeIIIa Посмотреть сообщение
Хм, ошибка "variable mat might not have been initialized" о чем-то говорит?
Переменная mat возможно не была инициализирована.
Так оно и есть.
Разве это ошибка?
У вас IDE?
0
958 / 577 / 136
Регистрация: 23.05.2012
Сообщений: 7,364
09.11.2018, 09:41
Хм, зачем переменная, которая нигде не используется? Попробуйте теперь вывести значение в консоль:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
import java.util.Scanner;
public class Program
{
    public static void main(String[] args) {
        Scanner m = new Scanner(System.in);
        int n = m.nextInt();
        int[][] mat;
        switch (n){
            case 2:
               mat = new int[][]{{},{}};
               break;
            case 3:
               mat = new int[][]{{},{},{}};
               break;
            case 4:
               mat = new int[][]{{},{},{},{}};
               break;
        }
        
        System.out.println(mat);
    }
}
Добавлено через 48 секунд
Цитата Сообщение от Хм Посмотреть сообщение
У вас IDE?
А что-то сложнее HelloWorld'а можно писать в блокноте? У меня IDEA)
1
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
09.11.2018, 10:00
Цитата Сообщение от JIeIIIa Посмотреть сообщение
зачем переменная, которая нигде не используется?
совершенно с вами согласен:
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
public static void main(String[] args) {
        Scanner m = new Scanner(System.in);
        int[][] mat;
        switch (m.nextInt()) {
            case 2:
                mat = new int[][]{{}, {}};
                break;
            case 3:
                mat = new int[][]{{}, {}, {}};
                break;
            case 4:
                mat = new int[][]{{}, {}, {}, {}};
                break;
            default: mat = new int[][]{{}, {}};
        }
 
        System.out.println(Arrays.deepToString(mat));
    }
1
230 / 199 / 71
Регистрация: 21.10.2016
Сообщений: 449
09.11.2018, 10:42
variable mat might not have been initialized
Неправильно перевел. Скорее всего имеется ввиду "переменная mat возможно не будет инициализирована".
Да, это ошибка.
Компилятор увидел эту возможность.
Если добавить дефолтную инициализацию, компилятор молчит.
Java
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
import java.util.Scanner;
public class Program
{
    public static void main(String[] args) {
        Scanner m = new Scanner(System.in);
        int n = m.nextInt();
        int[][] mat;
        switch (n){
            case 2:
               mat = new int[][]{{},{}};
               break;
            case 3:
               mat = new int[][]{{},{},{}};
               break;
            case 4:
               mat = new int[][]{{},{},{},{}};
               break;
            default:
               mat = new int[][]{{}, {}};
               break;
        }
        
        for(int i=0;i<n;i++){
            for(int c=0;c<n;c++){
                
            }
        System.out.println();
        }
 
        System.out.println(mat);
    }
}
Bash
1
2
3
4
5
6
7
8
9
10
11
const@mate ~/progs $ javac Program.java
const@mate ~/progs $ java Program
7
 
 
 
 
 
 
 
[[I@4554617c
0
 Аватар для Aviz__
2762 / 2069 / 510
Регистрация: 17.02.2014
Сообщений: 9,507
09.11.2018, 11:01
с 23 - 28 можно заменить на:
Java
1
2
3
4
5
for (int [] rows : mat) {
            for (int elem : rows)
                System.out.printf("%2d,", elem);
            System.out.println();
        }
0
Эксперт PythonЭксперт Java
19530 / 11067 / 2931
Регистрация: 21.10.2017
Сообщений: 23,294
09.11.2018, 17:06
То ли я чего-то не догоняю, то ли лыжи не едут...
Зачем здесь вообще switch?
Java
1
2
3
Scanner m = new Scanner(System.in);
        int n = m.nextInt();
        int[][] mat = new int[n][];
Не?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
09.11.2018, 17:06

Switch ( в чем ошибка???)
вот есть процедура для 3 Image (onClick) - общая процедура Image1 имеет Tag=1; image2 имеет Tag=2; Image3 имеет Tag=3; Есть поле...

Ошибка кода (switch)
Помогите пожалуйста. void __fastcall TForm1::Button1Click(TObject *Sender) { float x, y, k, r, s; int n, i; ...

Switch где ошибка?
Ошибки не выдает, но и не запускается. Ошибку найти не могу Т_Т Help) #include &lt;iostream&gt; using namespace std; int mine() { ...

Ошибка в while и switch-case
Привет всем) Пробовал написать простенькую программу, используя цикл while и switch-case. Не могу понять почему, но при выборе любого...

Switch Default ошибка
Привет. Подскажите где ошибка? Ругается на default Random randNum = new Random(); double num2; num2 =...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
26
Ответ Создать тему
Новые блоги и статьи
Книги по геймдизайну, игровым механикам и проектированию игрового опыта
8Observer8 08.11.2026
Содержание блога | English Version 1. 2003 - 06 - Designing Virtual Worlds (1st Edition) Автор: Richard A. Bartle | Объем: 768 стр. Ссылки: Amazon . . .
Родители токсичные абьюзеры по отношению к своим детям ругают их оскорбляют не любят
zorxor 08.11.2026
Жить в атмосфере постоянных оскорблений, критики и холодности со стороны родителей — это тяжелое и болезненное испытание, которое оставляет глубокие эмоциональные раны. Токсичное и абьюзивное. . .
Как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Ответ от Джемени ИИ.
zorxor 08.11.2026
Джемени, как только я захожу к себе в свою комнату я сразу же с себя снимаю свои трусы. Многие люди, возвращаясь домой, сразу переодеваются в максимально свободную одежду или вовсе предпочитают. . .
Паттерн очереди действий/команд (Action / Command Queue). Система очереди действий и кат-сцен с SDL3 Callbacks, cglm и OpenGL
8Observer8 07.11.2026
Содержание блога | English Version Руководство для начинающих по реализации паттерна очереди действий/ команд (Action / Command Queue) на C++ (C++20) с использованием официального SDL3 Callbacks. . .
Проверка полного ФИО в типовом справочнике
Maks 07.11.2026
Решение реализовано в конфигурации КА2, на примере справочника "КонтактныеЛицаПартнеров". Задача: Запрет инициалов. Не допускаеть использование сокращений вида "И. И. ", "И. И. ", "И И" и. . .
Про "Windows must die!"
kumehtar 04.11.2026
Знаете, чет накатило. . . . Когда-то это было почти боевым кличем: мол, нормальный человек сидит на DOS, OS/ 2 или Linux, а вот это вот - Must Die. А теперь человек произносит «мастдай» с усмешкой - и. . .
Красочные поля с номером страницы svg+background-image
russiannick 04.11.2026
Красочные поля с номером страницы не менее важны чем в эпоху бумажных книг. Посему спешу представить почтеннейшей публике этот важный инструмент который эти поля и формирует. В процессе разработки. . .
Вступаем в новую фазу генерации favicons, векторную.
russiannick 02.11.2026
Теперь нет нужды скрывать что используется простой svg. Исходный код изображения помещаем в поле и жмем кнопку. Исходник преобразуется в вид корректный для помещения в favicon или в url(). Нажатие. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru