Вступ до 3D-масивів на Java

Перш ніж зрозуміти тривимірні масиви на Java, ми повинні знати, що таке масив, і чому він використовується в мовах програмування? Масиви - це в основному група значень подібного типу, яка посилається на те саме ім’я. Під подібним типом ми маємо на увазі значення одного типу даних. Розглянемо ситуацію, в якій ми хочемо зберігати імена всіх учнів класу. Оскільки ім'я Student має тип даних String, але неправильно зберігати ім’я кожного студента в іншій змінній, оскільки воно не тільки займає багато місця, але й створює плутанину в програмі, збільшуючи майже однакове рядки коду. Тому для вирішення подібних ситуацій використовуються масиви. Програміст може створити масив імен студентів і вказати його розмір на момент створення об’єкта масиву. Таким чином, не потрібно буде вказувати ім'я змінної для кожного імені учня, і коли ми хочемо оновити, вставити та отримати значення, можна використовувати індекси цього масиву.

У Java змінна масиву оголошується аналогічно іншим змінним зі знаком () після типу даних цього типу. Розмір масиву потрібно визначити під час створення масиву, і він залишається постійним. До елементів масиву звертаються числові індекси з першим елементом, збереженим у 0 індексах. В основному в Java існує два типи масивів, тобто одновимірний та багатовимірний масиви. 3D-масиви підпадають під категорію багатовимірних масивів. Багатовимірні масиви простими словами можна визначити як масив масивів, а 3D-масиви - це масив 2D-масивів. 3D - це складна форма багатовимірних масивів. Розглянемо сценарій Квартири в будинку. Припустимо, в квартирі 10 поверхів, і кожен поверх має 5 квартир, а в кожній квартирі - 3 кімнати. Для обробки цих даних в програмуванні використовуються 3D-масиви.

Як визначаються 3D-масиви в Java?

Java використовує дуже простий спосіб визначення масивів. Квадратні дужки ('()') використовуються для визначення об'єкта масиву за типом даних масиву. Потрібно визначити розмір на момент оголошення оголошення масиву. 3D-масиви визначаються трьома дужками. Нижче наведено синтаксис визначення 3D-масивів на Java:

Data_type array_name( ) ( ) ( ) = new array_name(a)(b)(c);

  • Тут data_type: тип даних елементів, які будуть зберігатися в масиві. array_name: ім'я масиву
  • new: ключове слово для створення об’єкта в Java
  • a, b, c: містить числові значення для різних розмірів.

Синтаксис:

int ( ) ( ) ( ) arr = new int (10)(4)(3);

У наведеному вище прикладі може бути максимум 10x4x3 = 120 елементів, збережених масивом 'arr'.

Як створити 3D-масиви та вставити в них значення у Java?

Створення 3D-масивів у Java настільки ж просто, як і створення 1D та 2D масивів. Як було сказано вище, важливо визначити розмір масиву на момент оголошення. Створення 3D-масивів передбачає ще один крок передачі / введення значень у них у вигляді масиву 2D-масивів. Ми можемо визначити розмір масиву і можемо вставляти / вводити значення після цього, або ми можемо безпосередньо передавати значення в масив. Отже, спосіб значення, визначений у 3D-масивах, наведено нижче:

Синтаксис

data_type()()() arr_name =
(
(
(Array1Row1Col1, Array1Row1Col2, ….),
(Array1Row2Col1, Array1Row2Col2, ….)
),
(
(Array2Row1Col1, Array2Row1Col2, ….),
(Array2Row2Col1, Array2Row2Col2, ….)
)
)

Код

int num_array ( ) ( ) ( ) = (
(
(10, 20, 99),
(30, 40, 88)
),
(
(50, 60, 77),
(80, 70, 66)
),
);

Масиви знаходяться всередині масиву, і тому він називається масивом 2D масивів. У наведеному вище прикладі, якщо ми це чітко бачимо, є два 2D масиви чисел і цей 2D.

Як ініціалізувати елементи 3D-масивів на Java?

Як було сказано вище, ініціалізація всього масиву одразу є найкращою практикою при роботі з 3D-масивами, оскільки це зменшує шанси плутанини для майбутнього програмування. Хоча ми можемо також призначити по одному значення в масиві, який можна зробити так, як зазначено нижче:

Синтаксис:

int employee_arr( ) ( ) ( ) = new int (10)(3)(3);
employee_arr(0)(0)(0) = 100; // it will assign value 100 at very first element of employee_arr employee_arr(0)(0)(1) = 200; // it will assign value 200 at second element of employee_arr employee_arr(0)(0)(2) = 300; // it will assign value 100 at third element of employee_arr

Вищеописаний підхід є стомлюючим і не вважається хорошим підходом, оскільки займає багато місця та збільшує рядки коду. Існує також один підхід з використанням циклів, які вважаються хорошою практикою при роботі з 3D-масивами.

Синтаксис:

int Student_arr ( ) ( ) ( ) = new arr (2) (3) (4); int x, y, z, value;
for(x = 0; x< 2; x++) (
for(y = 0; y< 3; y++) (
for(z = 0; z< 4; z++) (
Student_arr(x)(y)(z) = value; value= value*2;
)
)
)

У наведеному вище прикладі всі елементи масиву вставляються за допомогою циклів, де x = немає. таблиць, y = загальна кількість рядків і z позначає загальну кількість стовпців у тривимірному масиві під назвою Student_arr.

Як отримати доступ до елементів 3D-масивів на Java?

У Java, хоча ми можемо отримати доступ до одного елемента масиву за допомогою індексів, оскільки ми ініціалізували їх індексами, аналогічними наведеному нижче:

Синтаксис:

int arr ( ) ( ) ( ) = new arr (3) (3) (3);
// Accessing the array elements of 3D arrays in Java using indices

Синтаксис:

System.out.println(“The first element of array is” + arr(0)(0)(0));

У наведеному вище синтаксисі він отримає елемент за індексом (0) (0) (0) масиву 'arr', але зазвичай, якщо ми хочемо отримати всі елементи масиву, тоді цей підхід не дотримується і елементи є доступ до циклів, оскільки він отримує всі елементи одночасно. Під час доступу до елементів через петлі використовуються 3 петлі, в яких перший цикл визначає загальну кількість таблиць, а другий цикл визначає рядки, а третій цикл визначає стовпці, як зазначено нижче:

Код:

class Student(
public static void main(String() args) (
// student_arr is the name of 3d array int()()() student_arr= (
(
(10, 20, 30),
(20, 30, 40)
),
(
(40, 50, 60),
(10, 70, 80),
)
);
// for loop to iterate through each element of 3D array for (tables = 0; tables<2; tables++)
(
for (rows= 0; rows <2; rows++)
(
for (columns= 0; columns<3; columns++)
(
System.out.print("student_arr(" +tables+ ")(" +rows+ ")(" +columns+ ") = "
+student_arr(tables)(rows)(columns)+ "\t");
)
System.out.println();
)
System.out.println();
)
)

Вихід:

student_arr (0) (0) (0) = 10student_arr (0) (0) (1) = 20student_arr (0) (0) (2) = 30
student_arr (0) (1) (0) = 20student_arr (0) (1) (1) = 30student_arr (0) (1) (2) = 40
student_arr (1) (0) (0) = 40student_arr (1) (0) (1) = 50student_arr (1) (0) (2) = 60
student_arr (1) (1) (0) = 10student_arr (1) (1) (1) = 70student_arr (1) (1) (2) = 80

Як видалити елементи 3D-масивів у Java?

  • Видалити елементи в 3D-масивах на Java просто і схоже на ініціалізацію їх. Клас масиву не забезпечує жодного прямого методу додавання або видалення елемента з масивів. Оскільки розмір масиву не можна динамічно збільшувати або зменшувати, для виконання цього завдання застосовується проста логіка програмування. Просто ми можемо використовувати 3 петлі для обходу всього масиву, вказавши індекс, з якого ми хочемо видалити елемент. Ми можемо створити новий масив або скопіювати оригінальний масив, залишивши елемент, який потрібно видалити.
  • Завдяки цьому процесу видалення та оновлення елементів у 3D-масиві використовується рідко. Натомість ArrayList використовується в таких типах випадків, оскільки він забезпечує різні функції для безпосереднього видалення елементів з нього. В ArrayList метод "delete ()" використовується для видалення елементів із заданого індексу в ArrayList. Якщо у масиві є значення, що повторюються, і ми хочемо видалити перше виникнення в масиві, який ми можемо використовувати, метод ArrayUtils.removeElement (масив, елемент) для того ж, який бере 2 аргументи, тобто весь масив і елемент, який потрібно бути знятим з нього.

Як оновити елементи

Не існує такого способу оновлення елементів у тривимірному масиві. Деяка логіка програмування застосовується для зміни елементів, таких як видалення елементів шляхом проходження всього масиву з використанням 3-х циклів та виконання модифікації або в конкретному індексі, або в цілому масиві. Для такої складної задачі ця обробка не надається переваги через 3D-масиви, а виконується за допомогою використання колекції ArrayList. У наборі ArrayList (int index, E елемент) використовується для зміни або оновлення елемента в динамічному масиві. Він бере 2 аргументи, тобто індекс та елемент із зміненим та оновленим значенням.

Висновок

Як ми вже згадували вище, як працювати над 3D-масивами на Java. Робота з багатовимірними масивами на Java для нових програмістів дещо складна, оскільки вона передбачає різні цикли, але розуміння її через покрокову процедуру та врахування основних правил під час роботи з масивами може значно полегшити роботу над нею.

Рекомендовані статті

Це посібник з 3D-масивів на Java. Тут ми обговорюємо, як створити масиви, як вставити значення, як отримати доступ, видалити та оновити. Ви також можете ознайомитись з іншими пов'язаними з нами статтями, щоб дізнатися більше -

  1. 3D-масиви на C
  2. 3D масиви в Python
  3. Масиви в R
  4. Переваги масиву
  5. Багатовимірний масив в Python
  6. Масиви в PHP
  7. Як працюють масиви та списки в Python?
  8. Багатовимірні масиви в C ++ з прикладами