+ 1
Массивы и многомерные массивы
Я не понимаю новую тему в Java, а именно массивы, можете пожалуйста объяснить как она работает, вообще не понимаю
45 Answers
0
myArr[0][2] = 42;
Это означает, что мы вместо числа 3, которое находится в нулевой ячейке, позиция 2 вставляем туда число 42 и у нас получается вот так:
[
[1,2,42], ---->0
4, ----->1
[5,6,7] ----->2
]
+ 2
Привет! Что именно не понятно? Что такое массив?
+ 1
Твердые скобки как раз и говорят компьютеру, что эта именно переменная и есть массив. Только массив пустой
+ 1
В языках программирования есть такое понятие, как переменная и тип данных. Переменная если визуально представить в программе это как пустая коробка. Внутрь коробки можно положить данные. Данные бывают:
- int: для целых чисел, таких как 123 и -456
- double: для чисел с плавающей точкой или действительных чисел с опциональной десятичной точкой и дробной частью в фиксированной или научной нотации, такой как 3.1416, -55.66.
- String: для текста, типа "Hello" или "Good Morning!". Текстовые строки заключаются внутри двойных кавычек.
т. е., чтоб в программе использовать данные, нужно создать переменную и явно указать, какой тип данных будет в ней лежать (int, string, double...)
+ 1
Так вот, массив это тоже тип данных, как и int, string, double
Примеры:
int a;
double b;
string c;
В этих трех строках мы создали три разных переменных a, b, c объявили(сказали) программе, что там будут лежать данные именно: для а -это целые числа, для b это с плавающей точкой и c там будет лежать строка. Но пока переменные пустые! В них ничего нет, в коробку ничего не положено. Так же само и с массивом. Мы создаем переменную, даем ей имя и указываем, что это массив. Но массив пока пустой
+ 1
За этоmyArr = [0] [2]=42 я сейчас изучу что и как, а вот как получилось x = 4 я знаю
+ 1
Двумерный массив это массив в массиве. Он выглядит так:
[
[1,2,3], ---->0
4, ----->1
[5,6,7] ----->2
]
Т.е. у нас есть массив из трех значений: на нулевой позиции у нас массив 1,2,3 на первой позиции 4 и на второй позиции 5,6,7
+ 1
x = myArr[1] [0] означает, что мы х присваиваем значение из массива myArr первая позиция, нулевое значение. Это как раз 4
+ 1
Попробуй там в уроке в том примере кода зайди в исполнение кода и поменяй значения x в квадратных скобках с [1] [0] на [0] [2]
+ 1
Числа в квадратных скобках означают позицию элемента в массиве
+ 1
Мы заменили число 3, которое было изначально на позиции 0 2 на 42
+ 1
Было:
[
[1,2,3], ---->0
4, ----->1
[5,6,7] ----->2
]
Стало:
[
[1,2,42], ---->0
4, ----->1
[5,6,7] ----->2
]
+ 1
Попробуй, поиграй с кодом, вставляя туда разные значения:
0 0
2 2
1 0
И смотри на массив чисел, который выше:
int [] [] myArr = { {1,2,3} , {4}, {5,6,7} };
+ 1
Оператор = в программировании означает команду "присвоить". Мы присвоили значению в массиве по адресу 0 2 значение 42. Мы просто стерли тройку и вместо нее там появилось 42
+ 1
После выполнения всего кода из примера массив стал выглядеть так:
int [] [] myArr = { {1,2,42} , {4}, {5,6,7} };
+ 1
Можно конечно любое. Это просто тебе дано для примера. Запиши туда хоть сто тысяч
+ 1
Тебе просто показывают операции с массивом
+ 1
public class Program {
public static void main(String[] args) {
int[ ][ ] myArr = { {1, 2, 3}, {4}, {5, 6, 7} };
myArr[0][2] = 500;
int x = myArr[0][2];
System.out.println(x);
}
}
+ 1
Ааааа, все теперь я точно понял
+ 1
Огромное спасибо