Руководство по Java Core. Массивы.

Для хранения последовательности элементов одного типа данных, в языке программирования Java предусмотрена такая структура данных, как массивы (arrays). Можно сказать, что массив – это набор данных одного типа.

Вместо того чтобы объявлять поочередно 1000 переменных одного типа, которые содержат, например, фамилии программистов в компании, намного удобнее объявить массив.

В общем виде, массивы выглядят так:
array

 

Примечание: на самом деле, сами массивы не очень часто используются в разработке реальных приложений, вместо них используются различные Коллекции (Collections).

В этом уроке мы рассмотрим основы работы с такими массивами.

Для понимания того, как это работает на практике, приведём пример простого приложения.

Пример:

Класс ArrayDemo


public class ArrayDemo {
    public static void main(String[] args) {
        int[] integers = {5, 4, 2, 5, 7, 32, 6, 6, 32, 34, 5, 3, 5, 3, 78, 56};

        System.out.println("Array integers: ");
        for (int i = 0; i < integers.length; i++) {
            System.out.print(integers[i] + " ");
        }

        System.out.println("\n========================");
        //Identifying min and max elements of array
        int minElement = integers[0];
        for (int i = 0; i < integers.length; i++) {
            if (integers[i] < minElement) {
                minElement = integers[i];
            }
        }
        System.out.println("Minimum element of array: " + minElement);

        System.out.println("\n========================");
        //Identifying min element of array
        int maxElement = integers[0];
        for (int i = 0; i < integers.length; i++) { if (integers[i] > maxElement) {
                maxElement = integers[i];
            }
        }
        System.out.println("Maximum element of array: " + maxElement);
        System.out.println("\n========================");
        //Calculating the sumOfElementsOfArrayIntegers of elements of the array
        int sumOfElementsOfArrayIntegers = 0;
        for (int i = 0; i < integers.length; i++) {
            sumOfElementsOfArrayIntegers += integers[i];
        }
        System.out.println("Sum of elements of the array is: " + sumOfElementsOfArrayIntegers);
    }
}

В результате работы программы мы получим следующий результат:


/*Some system messages*/
Array integers: 
5 4 2 5 7 32 6 6 32 34 5 3 5 3 78 56 
========================
Minimum element of array: 2

========================
Maximum element of array: 78

========================
Sum of elements of the array is: 283

Для более удобной работы с массивами, в языке Java создан специальный класс java.util.Arrays.

В нем реализованы методы, для таких операций, как бинарный поиск, сравнения, заполнения, сортировки массива и т.д.

Для понимания того, как это работает на практике, рассмотрим ещё один пример.

Пример:


import java.util.Arrays;

public class ArraysClassDemo {
    public static void main(String[] args) {
        int[] intArray = {5, 52, 2, 3, 6, 7, 12, 45, 1, 2, 4, 2};

        System.out.println("intArray (using Arrays): ");
        System.out.println(Arrays.toString(intArray));

        System.out.println("Sorted intArray (using Arrays): ");
        Arrays.sort(intArray);
        System.out.println(Arrays.toString(intArray));

        System.out.println("Filling intArray with 8 (using Arrays): ");
        Arrays.fill(intArray,8);
        System.out.println(Arrays.toString(intArray));

    }
}

В результате работы программы мы получим следующий результат:


/*Some system messages*/
intArray (using Arrays): 
[5, 52, 2, 3, 6, 7, 12, 45, 1, 2, 4, 2]
Sorted intArray (using Arrays): 
[1, 2, 2, 2, 3, 4, 5, 6, 7, 12, 45, 52]
Filling intArray with 8 (using Arrays): 
[8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8, 8]

В этом уроке мы более глубоко изучили, что такое массивы и как работать с ними, используя класс java.util.Arrays.

В следующем уроке мы рассмотрим как работать с датами и временем в языке Java.