Java. Урок 16. Массивы 2.2
Всем элементам массива после такой инициализации присваивается значение по умолчанию.

Существует возможность сразу задать значения элементов массива, создадим массив, который будет показывать количество лимонов в ящике, как в примере выше:

1
int[] a = new int[]{ 37273 };
Работа с массивом

Считывание массива:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
import java.util.Scanner;
public class test {
    public static void main(String[] args) {
        int[] a;//массив целых чисел
        int n;//количество элементов в массиве
        Scanner in = new Scanner(System.in);
        n = in.nextInt();
        a = new int[n];
        for(int i = 0; i < n; i++)
        {
            a[i] = in.nextInt();
        }
    }
}

Изменение значений массива:

1
2
3
4
5
int[] a;//массив целых чисел, который был как - то обработан
for(int i = 0; i < a.length; i++)
{
    a[i] = a[i] * 2;
}

Вывод массива:

1
2
3
4
5
int[] a;//массив целых чисел, который был как - то обработан
for(int i = 0; i < a.length; i++)
{
    System.out.println(a[i]);
}

Произвольный доступ к элементу массива по индексу:

1
2
3
System.out.println(a[0]);//Выводим первый элемент массива
a[1] = 1;//Присваиваем второму элементу массива 1
int temp = a[2];//Сохраняем значение третьего элемента массива в переменную temp

Вот так вот выглядят основные операции с массивами. Очень часто на различных уроках по информатике просят вынести эти этапы работы с массивом в отдельные функции, но про это мы поговорим позднее. Таким образом, с помощью считывания массива, мы можем ввести некоторые значение с консоли, с помощью изменения значений, мы можем например, увеличить все значения на единицу или умножить на два, а с помощью вывода мы можем вывести текущие значения массива. Если нам требуется работать только с конкретными элементами массива, то тут мы можем воспользоваться произвольным доступом по индексу, где индекс — это любое положительное целое число, которое меньше длины массива. Текущую длину массива можно получить с помощью свойства length, оно уже применялось при выводе массива.
Тут я опущу диалог про то, что массивы являются ссылками и работа с ними отличается от работы с обычными базовыми типами.

Двумерные массивы

Не всегда бывает удобно нумеровать ящики на складе с 0 до определенного числа, иногда хочется привести склад в более упорядоченный вид, например ввести ряды. Теперь каждый ящик имеет свой номер ряда и свой порядковый номер в этом ряду. Пусть на нашем складе есть девять ящиков, которые имеют содержат 1, 2 и так далее 9 апельсинов. Ящики на складе располагаются в три ряда по три ящика, тогда ситуацию на складе можно представить так:

Индексы 0 1 2
0 1 2 3
1 4 5 6
2 7 8 9

Двумерные массивы в Java — это массив массивов:

1
int[][] a;

Казалось бы объявляем, как всегда и никаких проблем:

1
int[][] a = new int[3][3];

И работаем с ним. Но при попытке обратиться к любому элементу массива:

1
a[0][0] = 1;//Ошибка, массив не инициализирован

Почему спросите вы? Ведь я создал массив размером 3 на 3. Дело в том, что вы создали только массив массивов, но значение по умолчанию для массива это null. После объявления массива еще необходимо создать все одномерные массивы:

1
2
3
4
for(int i = 0; i < a.length; i++)
{
    a[i] = new int[3];
}

После этого уже можно проводить операции считывания, обработки значений и вывода результата на экран.
Мы еще ни раз вернемся к массивам и научимся лучше их понимать и работать с ними.

Категория: Java | Добавил: ghost_mod (29.09.2016)
Просмотров: 313 | Рейтинг: 0.0/0
Всего комментариев: 0
Имя *:
Email:
Подписка:1
Код *: