프로그래밍을 좋아하는 당신처럼!
SpringBoot 실습 과정 배우기 https://edu.csdn.net/course/detail/31433
SpringCloud 입문 과정 배우기 https://edu.csdn.net/course/detail/31451
머리말
Array는 Java의 중요한 지식 포인트입니다.이 기사의 내용은 다음과 같습니다.
- 어레이 소개
- 어레이 정의
- 어레이 초기화
- foreach 루프
- 배열 도구
- 2 차원 배열 사용
어레이 소개
어레이가 필요한 이유
질문 : 학생 관리 시스템을 개발해야한다고 가정 해 보겠습니다. 수업에 동급생 40 명의 이름을 저장하는 방법은 무엇입니까?
40 개의 변수 정의
String name1 = “zhangsan”;
...
String name40 = “lisi”;
급우가 100 명 또는 1,000 명이라면 어떨까요?
변수는 하나의 데이터 만 저장할 수 있으므로 많은 양의 데이터를 저장하는 데 적합하지 않습니다.
배열을 사용하여 여러 데이터를 저장할 수 있습니다.
어레이 란?
슈퍼마켓 외부 사물함과 유사
- 많은 항목을 저장할 수 있습니다
- 각 그리드의 크기는 동일합니다.
- 각 그리드는 인접한 순서대로 정렬됩니다.
- 그리드는 번호로 액세스됩니다.
배열의 개념
- 어레이는 메모리의 지속적인 저장 공간입니다.
- 배열에있는 각 데이터의 유형이 동일합니다.
- 배열의 데이터는 아래 첨자를 통해 액세스됩니다.
어레이 분류
배열은 다음과 같이 나뉩니다.
- 1 차원 배열, 연속 저장 공간 행
1 | 2 | 삼 | 4 | 5 |
---|
- 2 차원 배열은 여러 행과 열이있는 구조
로 볼 수 있으며 1 차원 배열의 중첩으로 볼 수 있으며 각 배열은 1 차원 배열입니다.
1 | 2 | 삼 | 4 | 5 |
---|---|---|---|---|
6 | 7 | 8 | 9 | 10 |
배열 정의
배열을 만들 때 동시에 배열의 길이를 정의하십시오.
类型[] 数组名 = new 类型[长度];
int[] array = new int[5];
[]는 배열 이름 뒤에 올 수도 있습니다.
类型 数组名[] = new 类型[长度];
int array[] = new int[5];
먼저 배열을 선언 한 다음 길이를 정의 할 수도 있습니다.
类型[] 数组名;
数组名 = new 类型[长度];
참고 : 배열이 생성 된 후 데이터에는 기본값이 있습니다.
int 기본값은 0, float 기본값은 0.0f, double 기본값은 0.0, String 기본값은 null입니다.
배열의 메모리 할당
- 기본 데이터 유형은 데이터 값을 직접 저장하는 것입니다.
- 참조 데이터 유형은 데이터가 저장되는 메모리 주소입니다.
어레이 초기화
배열의 초기화는 배열 요소에 값을 할당하는 것입니다.
두 종류의 초기화 :
- 정적 초기화
배열을 정의하는 동안 배열의 데이터에 값을 할당합니다.
数据类型[] 数组名 = {值1,值2,值3...};
如:int[] array = {20,44,33,100,55};
数据类型[] 数组名 = new int[]{值1,值2,值3...};
如:int[] array = new int[]{20,44,33,100,55};
참고 : 정적 초기화는 길이를 정의 할 수 없습니다. 배열 길이는 값 수에 의해 결정됩니다.
- 동적 초기화
배열을 정의한 후 루프를 사용하여 배열에 값을 할당합니다.
int[] array = new int[5];
for(int i = 0;i < array.length;i++){
array[i] = i;
}
데이터에 액세스하기위한 배열 배열 이름 [index] 별주의 :
- 아래 첨자는 0부터 시작합니다.
- 첨자가 0에서 배열 길이 -1의 범위에 있지 않으면 ArrayIndexOutOfBoundsException이 발생합니다.
연습 : 길이가 5 인 문자열 배열을 정의하고, 데이터를 동적으로 초기화하고, 배열의
첫 번째, 마지막 및 중간 문자열 값을 출력합니다.
향상된 for 루프
foreach 루프는 jdk1.5 이후에 지원되는 구문으로 배열 또는 컬렉션을 탐색하는 데 사용됩니다
.
for(数据类型 变量名 : 数组名){
访问变量的值
}
참고 : 이러한 유형의 for 루프는 배열의 데이터에 액세스 할 수만 있고 수정할 수 없습니다. 수정
해야하는 경우 일반 for 루프를 사용해야합니다.
연습 :
길이가 5 개인 문자열 배열을 정의하고 배열을 정적으로 초기화합니다.
foreach 루프를 사용하여 배열 요소를 출력합니다.
2 차원 배열
2 차원 배열이란
행과 열로 구성된 테이블 구조로 이해 될 수 있으며 이는 1 차원 배열에 중첩 된 1 차원 배열로 간주 될 수 있습니다.
2 차원 배열 생성
数据类型[][] 数组名 = new 数据类型[行数][列数];
如:int[][] array = new int[3][5];
2 차원 배열 액세스
数组名[行下标][列下标];
如:访问上面数组第二行第三个元素,array[1][2];
2 차원 배열 초기화
정적 초기화
数据类型[][] 数组名 = {
{值,值,值...},{值,值,值...},{值,值,值...}..};
数据类型[][] 数组名 = new 数据类型[][]{
{值,值,值...},{值,值,值...},{值,值,值...}..};
동적 초기화
int[][] array = new int[3][5];
for(int i = 0;i < array.length;i++){
for(int j = 0;j < array[i].length;j++){
array[i][j] = i * j;
}
}
배열 도구
Arrays 클래스는 개발 효율성을 향상시킬 수있는 배열과 관련된 많은 메서드를 캡슐화
합니다.
- Sort
Arrays.sort (배열 이름) - Find
int Arrays.binarySearch (배열 이름, 찾을 숫자)
결과 를 얻으려면 숫자의 첨자를 찾는 것입니다. - Copy
Arrays.copyOf (복사 된 배열 이름,
새 배열 의 길이) , 얻은 결과는 새 배열입니다. - Fill
Arrays.fill (배열 이름, 채울 수);
동일한 값으로 배열 채우기 - Compare
Arrays.equals (배열 이름 1, 배열 이름 2)
는 두 배열 값이 동일한 지 여부를 반환합니다.
종료
이 기사는 끝났습니다. 숙제했는지 모르겠습니다. 숙제를 남겨서 확인하겠습니다.
1. 길이가 5 인 정수 배열을 정의하고 동시에 5 개의 초기 값을 제공하여 값을 출력합니다. 루프의 배열에서.
2. 5 개의 요소가있는 정수 배열 a가 주어지면 a에있는 모든 요소의 합계를 찾으십시오.
3. 배열을 정의하고 5 명의 이름을 입력하고 배열에 저장 한 다음 1, 3, 5 명의 이름을 출력합니다.
다른 Java 지식을 배워야하는 경우 여기 에서 Java 요약에 대한 매우 상세한 지식을 찌르십시오.