Что такое массив Java?
Java Array - это очень распространенный тип структуры данных, который содержит все значения данных одного и того же типа данных. Элементы данных, помещенные в массив, называются элементами, и первый элемент в массиве начинается с нулевого индекса. Массивы наследуют класс объекта и реализуют сериализуемые и клонируемые интерфейсы. Мы можем хранить примитивные значения или объекты в массиве.
Проще говоря, это программная конструкция, которая помогает заменить это
x0=0;x1=1;x2=2;x3=3;x4=4;x5=5;
с этим
…x[0]=0;x[1]=1;x[2]=2;x[3]=3;x[4]=4;x[5]=5;
В этом руководстве вы узнаете:
- Что такое массив?
- Переменные массива
- Программа первого массива
- Массив Java: передать по ссылке
- Многомерные массивы
как это помогает, так это то, что переменная может ссылаться на индекс (число в скобках []) для упрощения цикла.
for(count=0; count<5; count++) {System.out.println(x[count]);}
Переменные массива
Использование массива в вашей программе - это 3 шага
процесс -1) Объявление вашего массива
2) Построение массива 3) Инициализируйте массив
1) Объявление вашего массива
Синтаксис
[] ;
или же
[];
Пример:
int intArray[];// Defines that intArray is an ARRAY variable which will store integer valuesint []intArray;
2) Построение массива
arrayname = new dataType[]
Пример:
intArray = new int[10]; // Defines that intArray will store 10 integer values
Декларация и строительство вместе
int intArray[] = new int[10];
3) Инициализировать массив
intArray[0]=1; // Assigns an integer value 1 to the first element 0 of the arrayintArray[1]=2; // Assigns an integer value 2 to the second element 1 of the array
Объявление и инициализация массива
[] = {};
Пример:
int intArray[] = {1, 2, 3, 4};// Initilializes an integer array of length 4 where the first element is 1 , second element is 2 and so on.
Программа первого массива
Шаг 1) Скопируйте следующий код в редактор.
class ArrayDemo{public static void main(String args[]){int array[] = new int[7];for (int count=0;count<7;count++){array[count]=count+1;}for (int count=0;count<7;count++){System.out.println("array["+count+"] = "+array[count]);}//System.out.println("Length of Array = "+array.length);// array[8] =10;}}
Шаг 2) Сохраните, скомпилируйте и запустите код. Наблюдайте за выходом
Выход:
array[0] = 1array[1] = 2array[2] = 3array[3] = 4array[4] = 5array[5] = 6array[6] = 7
Шаг 3) Если x является ссылкой на массив, x.length даст вам длину массива.
Раскомментируйте строку №10. Сохраните, скомпилируйте и запустите код.
Length of Array = 7
Шаг 4) В отличие от C, Java проверяет границу массива при доступе к элементу в нем. Java не позволит программисту выйти за свои границы.
Раскомментируйте строку №11. Сохраните, скомпилируйте и запустите код.
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 8at ArrayDemo.main(ArrayDemo.java:11)Command exited with non-zero status 1
Шаг 5) Выдается исключение ArrayIndexOutOfBoundsException. В случае C тот же код показал бы какое-то мусорное значение.
Массив Java: передать по ссылке
Массивы передаются функциям по ссылке или как указатель на оригинал. Это означает, что все, что вы делаете с массивом внутри функции, влияет на оригинал.
Пример: для понимания массива передаются по ссылке
Шаг 1) Скопируйте следующий код в редактор
class ArrayDemo {public static void passByReference(String a[]){a[0] = "Changed";}public static void main(String args[]){String []b={"Apple","Mango","Orange"};System.out.println("Before Function Call "+b[0]);ArrayDemo.passByReference(b);System.out.println("After Function Call "+b[0]);}}
Шаг 2) Сохраните, скомпилируйте и запустите код. Наблюдайте за выходом
Выход:
Before Function Call AppleAfter Function Call Changed
Многомерные массивы
Многомерные массивы на самом деле являются массивами массивов.
Чтобы объявить многомерную переменную массива, укажите каждый дополнительный индекс, используя другой набор квадратных скобок.
Ex: int twoD[ ][ ] = new int[4][5] ;
Когда вы выделяете память для многомерного массива, вам нужно только указать память для первого (самого левого) измерения.
Остальные размеры можно выделить отдельно.
В Java длина каждого массива в многомерном массиве находится под вашим контролем.
Пример
public class Guru99 {public static void main(String[] args) {// Create 2-dimensional array.int[][] twoD = new int[4][4];// Assign three elements in it.twoD[0][0] = 1;twoD[1][1] = 2;twoD[3][2] = 3;System.out.print(twoD[0][0] + " ");}}
Выход:
1