Для хранения последовательности элементов одного типа данных, в языке программирования Java предусмотрена такая структура данных, как массивы (arrays). Можно сказать, что массив – это набор данных одного типа.
Вместо того чтобы объявлять поочередно 1000 переменных одного типа, которые содержат, например, фамилии программистов в компании, намного удобнее объявить массив.
В общем виде, массивы выглядят так:
Примечание: на самом деле, сами массивы не очень часто используются в разработке реальных приложений, вместо них используются различные Коллекции (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.