Чтение онлайн

на главную - закладки

Жанры

Визуальное программирование на Java Swing в NetBeans
Шрифт:

Эта проблема решается в Java использованием меток. Любая инструкция в программе может быть снабжена меткой, которая представляет собой содержательное имя, позволяющее сослаться на соответствующую инструкцию.

метка: инструкция

Несмотря на то, что метка может быть установлена перед любой инструкцией, на практике имеет смысл применять метки только перед циклическими конструкциями for, while, do, условными конструкциями if, switch и блоками {}. Чтобы «выбраться» из вложенного цикла или блока, достаточно снабдить

меткой соответствующий внешний блок и указать её в команде break, которая передаёт управление первой инструкции, следующей за блоком.

Примеры:

В данном случае break осуществит выход сразу из двух циклов.

Ещё один пример выхода из сложной конструкции:

boolean t = true;

a:

{

b:

{

c:

{

System.out.println("До break");

if (t) {

break b;

}

System.out.println("He будет выполнено ");

}

System.out.println("He будет выполнено ");

}

System.out.println("После break");

}

run:

До break

После break

Выход из методов (процедур). В Java для реализации выхода из методов (процедур) используется метод return, который приведет к немедленному завершению работы и передаче управления коду, вызвавшему этот метод. Ниже приведен пример, иллюстрирующий использование оператора return:

boolean t = true;

System.out.println("До return");

if (t) { return; }

System.out.println("Этo не будет выполнено ");

run:

До return

Для выхода из программы используется метод System.exit(КодОшибки). Если программа заканчивается нормально, то КодОшибки должен быть 0:

System.exit(0);

1.5 Одномерные статические массивы

Одномерные массивы служат для хранения линейного списка с данными. Статические массивы поддерживаются на уровне Java-синтаксиса. Число элементов указывается явно при создании объекта массива или определяется автоматически при перечислении элементов массива. По умолчанию элементы массива объектов устанавливаются в null или в 0 для простых типов. Индексация элементов начинается с 0. Размер массива определяется через функцию length.

Рассмотрим пример работы с одномерными статическими массивами:

package tsn01.array;

import java.util.Arrays;

public class TSN01_Array {

public static void main(String[] args) {

//

Пример работы с одномерными статическими массивами

int a[], b[]; // Переменные-массивы целых чисел

a = new int[10]; // Создание массива без инициализации

b = new int[]{1, 2, 3, 4}; // Создание массива с инициализацией

String s[] = new String[] {"Hello ", "world", "!!!"}; // Описываем и создаем массив строк

Arrays.fill(a, 0); // Заполнить массив нулями

a[0] = 20; a[1] = 10; a[2] = 5; a[3] = 33; // Устанавливаем значения 4 элементам

Arrays.fill(a, 5,10,-1); // Присвоить с 5 по 9 (10-1) элементам значение "-1"

Arrays.sort(a); // Сортируем массив

b[3] = b[1]*0b11+b[2]*0x2; // Рассчитываем значение для 4 элемента

System.out.println(Arrays.toString(a)); // Вывод на экран массива "a"

System.out.println(Arrays.toString(b)); // Вывод на экран массива "b"

System.out.println(Arrays.toString(s)); // Вывод на экран массива "s"

// Вывод на экран размеров массивов

System.out.println("Количество элементов в массиве \"a\": " + a.length);

System.out.println("Количество элементов в массиве \"b\": " + b.length);

System.out.println("Количество элементов в массиве \"str\": " + s.length);

System.out.println(s[0] + s[1]); // Доступ к элементам массива

}

}

Результат работы программы:

[-1, -1, -1, -1, -1, 0, 5, 10, 20, 33]

[1, 2, 3, 12]

[Hello , world, !!!]

Количество элементов в массиве "a": 10

Количество элементов в массиве "b": 4

Количество элементов в массиве "str": 3

Hello world

1.6 Многомерные статические массивы

Многомерные статические массивы служат для хранения двухмерных таблиц с данными. Рассмотрим пример работы с двумерным статическим массивом:

package tsn01.matrix;

public class TSN01_Matrix {

public static void main(String[] args) {

// Работа с двумерным статическим массивом чисел

// Создание исходных данных (элементов массива) и вывод их на экран

final int r = 4; // Количество строк

final int c = 5; // Количество столбцов

int m[][] = new int[r][c]; // Двумерный массив

int k; System.out.println("Matrix:");

for (int i = 0; i < r; i++) { // Цикл по строкам

for (int j = 0; j < c; j++) { // Цикл по колонкам

k = (int) Math.round(Math.random * 100); // Получение случайного числа

m[i][j] = k; // Присвоение элементу массива числа

System.out.print(String.format("%5d", m[i][j])); // Вывод на экран элемента массива

} System.out.println("");

}

// Поиск минимума и максимума в массиве

int min = m[0][0], max = m[0][0], maxi = 0, maxj = 0, mini = 0, minj = 0; // Задаем начальные значения мин и макс

for (int i = 0; i < r; i++) { // Цикл по строкам

for (int j = 0; j < c; j++) { // Цикл по колонкам

k = m[i][j]; // Получаем элемент массива

Поделиться:
Популярные книги

Эволюционер из трущоб. Том 7

Панарин Антон
7. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Эволюционер из трущоб. Том 7

Паладин из прошлого тысячелетия

Еслер Андрей
1. Соприкосновение миров
Фантастика:
боевая фантастика
попаданцы
6.25
рейтинг книги
Паладин из прошлого тысячелетия

Хозяин Стужи 3

Петров Максим Николаевич
3. Злой Лед
Фантастика:
аниме
фэнтези
попаданцы
7.00
рейтинг книги
Хозяин Стужи 3

Лихие. Смотрящий

Вязовский Алексей
2. Бригадир
Фантастика:
попаданцы
5.00
рейтинг книги
Лихие. Смотрящий

Копиист

Поселягин Владимир Геннадьевич
2. Рунный маг
Фантастика:
фэнтези
7.26
рейтинг книги
Копиист

Имя нам Легион. Том 13

Дорничев Дмитрий
13. Меж двух миров
Фантастика:
боевая фантастика
рпг
аниме
5.00
рейтинг книги
Имя нам Легион. Том 13

Дважды одаренный. Том II

Тарс Элиан
2. Дважды одаренный
Фантастика:
городское фэнтези
альтернативная история
аниме
5.00
рейтинг книги
Дважды одаренный. Том II

Жена по ошибке

Ардова Алиса
Любовные романы:
любовно-фантастические романы
7.71
рейтинг книги
Жена по ошибке

Кукловод

Злобин Михаил
2. О чем молчат могилы
Фантастика:
боевая фантастика
8.50
рейтинг книги
Кукловод

Технарь

Муравьёв Константин Николаевич
1. Технарь
Фантастика:
космическая фантастика
попаданцы
7.13
рейтинг книги
Технарь

Отморозок 4

Поповский Андрей Владимирович
4. Отморозок
Фантастика:
попаданцы
фантастика: прочее
5.00
рейтинг книги
Отморозок 4

Кодекс Охотника. Книга VI

Винокуров Юрий
6. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Кодекс Охотника. Книга VI

Курсант: назад в СССР

Дамиров Рафаэль
1. Курсант
Фантастика:
попаданцы
альтернативная история
7.33
рейтинг книги
Курсант: назад в СССР

Камень. Книга шестая

Минин Станислав
6. Камень
Фантастика:
боевая фантастика
7.64
рейтинг книги
Камень. Книга шестая