어레이 개요
배열 (The Array) : , 데이터 모드의 통합 관리를 위해 이름 과 번호 를 사용하여 특정 수집 순서 의 배열에 의해 복수의 동일한 유형의 데이터 . 배열 자체는 참조 데이터 유형 이며 배열의 요소는 모든 데이터 유형 (기본 데이터 유형 및 참조 데이터 유형)이 될 수 있습니다. 배열 객체를 만들면 항상 메모리에 연속 공간이 열리고 배열 이름은이 연속 공간의 첫 번째 주소를 나타냅니다. 배열의 길이가 정의되면 변경할 수 없습니다 . 지정된 위치에있는 요소를 아래 첨자 (인덱스)로 직접 호출 할 수 있습니다. 배열의 일반적인 개념 :
-
어레이 이름
-
아래 첨자 (또는 색인)
-
요소
-
배열 의 길이
배열의 분류 : -
차원으로 분류 : 1 차원 배열, 2 차원 배열, 3 차원 배열 ...
-
배열의 요소 유형 분류에 따라 : 기본 데이터 유형 요소의 배열 (정수 배열, 바이트 배열 등) 및 참조 데이터 유형 요소의 배열 (즉, 객체 배열)
-
정의에 따라 분류 : 동적 유형 배열, 정적 유형 배열
1 차원 배열 사용
1 차원 배열의 정의 :
int [] num 또는 int num [];
참고 : 값의 길이 (배열의 요소 수)는 Java에서 배열을 선언 할 때 지정할 수 없습니다 (예 : int score). [10] // 오류
1 차원 배열 초기화 :
- 동적 초기화 : 배열 선언 및 배열 요소 할당 공간의 할당 작업은 별도 수행된다.
실시 예 1 :
package com.qwy;
public class Demo01 {
public static void main(String[] args) {
//动态声明一维数组:声明,并初始化
int[] score=new int[5];
//给数组赋值
score[0]=88;
score[1]=99;
score[2]=100;
score[3]=85;
score[4]=88;
//动态声明一维数组:先声明,再初始化
String names[];
names=new String[3];
//给数组赋值
names[0]="张三";
names[1]="李四";
names[2]="王五";
}
}
- 정적 초기화 : 배열을 정의 할 때 공간을 할당하고 배열 요소에 값을 할당합니다.
예 2 :
package com.qwy;
public class Demo02 {
public static void main(String[] args) {
//静态声明一维数组:声明,并赋值,注意不要编写数组长度
int[] score=new int[]{
88,89,99,100,86};
//静态声明一维数组,直接赋值
String names[]={
"张三","李四","王五"};
}
}
배열 요소 참조 :
1. new 사용을 정의하여 공간을 할당 한 후 배열의 각 요소를 참조 할 수 있습니다.
2. 배열 요소의 참조 방법 : 배열 이름 [배열 요소 첨자]
1) 배열 요소 첨자는 정수 상수 또는 활력을주는 식일 수 있습니다 : a [3], b [i], c [6 * i] ;
2) 배열 요소 첨자는 0부터 시작합니다. 길이가 n 인 배열의 유효한 첨자 값 범위 : 0 —> n-1; 예 : int a [] = new int [3]; 참조 할 수있는 배열 요소는 다음과 같습니다. a [0], A [1], a [2]
3. 각 배열에는 길이를 나타내는 속성 길이 가 있습니다. 예를 들면 다음과 같습니다. a.length는 배열의 길이를 나타냅니다. a (요소 수)
참고 : 배열이 초기화되면 길이를 변경할 수 없습니다.
배열 요소의 기본 초기화 값 :
배열은 참조 유형이고 해당 요소는 클래스의 멤버 변수와 동일하므로 배열에 공간이 할당되면 배열의 각 요소는 다음과 같은 방식으로 암시 적으로 초기화됩니다. 멤버 변수
예 3 :
package com.qwy;
public class Demo03 {
public static void main(String[] args) {
//静态声明一维数组:声明,并赋值,注意不要编写数组长度
int[] score=new int[5];
System.out.println(score[0]);//默认值0
System.out.println(score[2]);//默认值0
}
}
- 기본 데이터 유형 배열의 경우 기본 초기 값은 해당 기본 데이터 유형의 기본값입니다.
참조 : https://blog.csdn.net/qwy715229258163/article/details/113667381 - 애플리케이션 데이터 유형 배열의 경우 기본 초기 값은 모두 null입니다.
1 차원 배열의 메모리 맵
new 키워드는 Java에서 배열을 만드는 데 사용됩니다. 기본 데이터 유형 요소의 1 차원 배열을 만듭니다.
예 4 :
package com.qwy;
public class Demo04 {
public static void main(String[] args) {
//创建一维数组:基本数据类型数组在显式赋值之前,Java会自动给他们赋默认值。
int[] scores=new int[5];
}
}
메모리 그래프 : 명시 적 할당 이전
예 5 : 명시 적 할당 이후
package com.qwy;
public class Demo05 {
public static void main(String[] args) {
//创建一维数组:基本数据类型数组在显式赋值之前,Java会自动给他们赋默认值。
int[] scores=new int[5];
//重新赋值
scores[0]=88;
scores[1]=99;
scores[2]=100;
scores[3]=85;
scores[4]=88;
}
}
메모리 맵 :