Переменная массива хранит массив по адресу 内存中的地址, массив представляет собой ссылочный тип данных, а адрес переменной указывает на конечные данные
Точно так же, как имя массива является номером дома, вы можете найти свой дом только по номеру дома.
▷ Обход массивов
遍历: Доступ к элементам массива один за другим, которые можно пройти с помощью for цикла
Например, если вы не знаете, сколько элементов в массиве, и хотите вычислить сумму элементов,
packagetiny.geeker;publicclassTest{
publicstaticvoidmain(String[] args){
int ages[]={
10,20,30,40};int count =0;for(int i =0; i < ages.length; i++){
count += ages[i];}System.out.println(count);}}
▷ Динамическая инициализация массивов
动态化数组:То есть при определении массива не сохраняются конкретные значения элементов, а определяется только тип данных, хранящихся в массиве, и длина массива.
Подходит для бизнес-сценариев, где конкретные значения элементов поначалу неопределенны и известно только количество элементов.
Например, задан массив целых чисел, найти в нем максимальное значение.
Он заключается в том, чтобы пройти по массиву, определить, превышает ли каждое значение предыдущее значение, и присвоить большее значение переменной.
packagetiny.geeker;publicclassTest{
publicstaticvoidmain(String[] args){
int age[]={
10,20,40,30};int max = age[0];// 定义最开始的值for(int i =0; i < age.length; i++){
if(age[i]> max) max = age[i];}System.out.println("最大值为:"+ max);}}
▷ Обращение массива
Например, если задан целочисленный массив {10, 20, 40, 30}, преобразуйте его в {30, 40, 20, 10}
Принцип состоит в том, чтобы сначала поменять местами первый элемент и последний элемент, затем поменять местами второй элемент и предпоследний элемент, а затем продолжить.
Вы можете определить две переменныеi和j, где i значение по умолчанию перемещается вправо от первого элемента, j По умолчанию последний элемент перемещается влево, и позиции двух элементов можно каждый раз менять местами
▷ инструменты отладки
При написании программы вы можете видеть, что редактор очень интуитивно выдает вам подсказки об ошибках.
Но если вы хотите увидеть изменения значений в процессе работы, вам необходимо воспользоваться инструментом debug редактора
Сначала вам нужно установить точку останова на 行号, затем щелкнуть правой кнопкой мыши и выбрать debug для запуска, нажать кнопку «Выполнить», и вы сможете см. в редакторе. Изменения в массиве очень заметны
▷ Метод
方法:Это грамматическая структура, которая инкапсулирует фрагмент кода в функцию, чтобы ее можно было вызывать повторно.
方法Это может улучшить повторяемость кода, повысить эффективность разработки, а также сделать логику программы более понятной.
Формат определения метода:修饰词 返回值类型 方法名(形参列表) { 代码; return 返回值; }
Примечание. Если метод объявляет определенный тип возвращаемого значения, внутренний возврат должен возвращать соответствующий тип данных
packagetiny.geeker;publicclassTest{
publicstaticvoidmain(String[] args){
int count =sum(1,2);System.out.println(count);}publicstaticintsum(int a,int b){
return a + b;}}
▷ Возвращаемое значение
Если определенный метод не возвращает значение, то тип возвращаемого значения необходимо определить какvoid
Если определенный метод имеет возвращаемое значение, внутренний возврат должен возвращать соответствующий тип данных.
Списков формальных параметров может быть несколько или даже ни одного; если формальных параметров несколько, их необходимо разделить запятыми, а значения инициализации не могут быть заданы.
值传递:Это означает, что при передаче фактических параметров в формальные параметры в методе передается копия значения, хранящегося в переменной фактического параметра. Изменение значения параметра в копии не приведет к изменению значения фактического параметра.
引用值传递:При передаче в формальный параметр передается адрес фактического параметра.После изменения значения значение в фактическом параметре будет изменено.Например, массив передается по ссылке.
packagetiny.geeker;publicclassTest{
publicstaticvoidmain(String[] args){
// 值传递int a =20;change(a);System.out.println(a);}publicstaticvoidchange(int a){
System.out.println(a);
a =520;// 修改值System.out.println(a);}}