java
Java는 데이터 구조인 배열을 제공합니다. , 동일한 유형의 요소에 대한 고정 크기 순차 컬렉션을 저장합니다. 배열은 데이터 모음을 저장하는 데 사용되지만 종종 배열을 같은 유형의 변수 모음으로 생각하는 것이 더 유용합니다.
number0, number1, ..., number99와 같은 개별 변수를 선언하는 대신 숫자와 같은 하나의 배열 변수를 선언하고 숫자[0], 숫자[1], ..., 숫자[99]를 사용하여 표현합니다. 개별 변수.
이 튜토리얼에서는 배열 변수를 선언하고, 배열을 생성하고, 인덱스 변수를 사용하여 배열을 처리하는 방법을 소개합니다.
프로그램에서 배열을 사용하려면 배열을 참조할 변수를 선언해야 하고, 변수가 참조할 수 있는 배열의 유형을 지정해야 합니다. 다음은 배열 변수를 선언하는 구문입니다 -
dataType[] arrayRefVar; // preferred way. or dataType arrayRefVar[]; // works but not preferred way.
참고 - dataType[] arrayRefVar 스타일 가 선호됩니다. dataType arrayRefVar[] 스타일 C/C+에서 옵니다. C/C++를 수용하기 위해 Java에서 채택되었습니다. 프로그래머.
다음 코드 스니펫은 이 구문의 예입니다 -
double[] myList; // preferred way. or double myList[]; // works but not preferred way.
다음 구문과 함께 new 연산자를 사용하여 배열을 만들 수 있습니다. -
arrayRefVar = new dataType[arraySize];
위의 문장은 두 가지 역할을 합니다 -
새로운 dataType[arraySize]를 사용하여 배열을 생성합니다.
새로 생성된 배열의 참조를 arrayRefVar 변수에 할당합니다.
배열 변수 선언, 배열 생성 및 변수에 대한 배열 참조 할당은 아래와 같이 하나의 명령문으로 결합될 수 있습니다. -
dataType[] arrayRefVar = new dataType[arraySize];
또는 다음과 같이 배열을 생성할 수 있습니다 -
dataType[] arrayRefVar = {value0, value1, ..., valuek};
배열 요소는 색인을 통해 액세스됩니다. . 배열 인덱스는 0부터 시작합니다. 즉, 0에서 arrayRefVar.length-1까지 시작합니다. .
다음 명령문은 배열 변수 myList를 선언하고 이중 유형의 10개 요소로 구성된 배열을 생성하고 myList에 대한 참조를 할당합니다 -
double[] myList = new double[10];
다음 그림은 myList 배열을 나타냅니다. 여기서 myList는 10개의 이중 값을 보유하고 인덱스는 0에서 9까지입니다.
배열 요소를 처리할 때 for 루프 또는 foreach 배열의 모든 요소가 동일한 유형이고 배열의 크기를 알고 있기 때문에 루프가 발생합니다.
다음은 배열을 생성, 초기화 및 처리하는 방법을 보여주는 완전한 예입니다. −
라이브 데모public class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (int i = 0; i < myList.length; i++) { System.out.println(myList[i] + " "); } // Summing all elements double total = 0; for (int i = 0; i < myList.length; i++) { total += myList[i]; } System.out.println("Total is " + total); // Finding the largest element double max = myList[0]; for (int i = 1; i < myList.length; i++) { if (myList[i] > max) max = myList[i]; } System.out.println("Max is " + max); } }
이것은 다음 결과를 생성합니다 -
1.9 2.9 3.4 3.5 Total is 11.7 Max is 3.5
JDK 1.5에는 foreach 루프 또는 향상된 for 루프라는 새로운 for 루프가 도입되어 인덱스 변수를 사용하지 않고 전체 배열을 순차적으로 탐색할 수 있습니다.
다음 코드는 myList −
배열의 모든 요소를 표시합니다. 라이브 데모public class TestArray { public static void main(String[] args) { double[] myList = {1.9, 2.9, 3.4, 3.5}; // Print all the array elements for (double element: myList) { System.out.println(element); } } }
이것은 다음 결과를 생성합니다 -
1.9 2.9 3.4 3.5
메소드에 기본 유형 값을 전달할 수 있는 것처럼 배열을 메소드에 전달할 수도 있습니다. 예를 들어, 다음 메소드는 int 배열 -
public static void printArray(int[] array) { for (int i = 0; i < array.length; i++) { System.out.print(array[i] + " "); } }
배열을 전달하여 호출할 수 있습니다. 예를 들어, 다음 명령문은 printArray 메소드를 호출하여 3, 1, 2, 6, 4 및 2 −
를 표시합니다.printArray(new int[]{3, 1, 2, 6, 4, 2});
메서드는 배열을 반환할 수도 있습니다. 예를 들어, 다음 메소드는 다른 배열의 반전인 배열을 반환합니다 -
public static int[] reverse(int[] list) { int[] result = new int[list.length]; for (int i = 0, j = result.length - 1; i < list.length; i++, j--) { result[j] = list[i]; } return result; }
java.util.Arrays 클래스에는 배열 정렬 및 검색, 배열 비교, 배열 요소 채우기를 위한 다양한 정적 메소드가 포함되어 있습니다. 이러한 메소드는 모든 기본 유형에 대해 오버로드됩니다.
Sr.No. | 방법 및 설명 |
---|---|
1 | 공개 정적 int binarySearch(Object[] a, 개체 키) 이진 검색 알고리즘을 사용하여 지정된 값에 대해 지정된 Object 배열( Byte, Int , double 등)을 검색합니다. 이 호출을 수행하기 전에 배열을 정렬해야 합니다. 목록에 포함된 경우 검색 키의 인덱스를 반환합니다. 그렇지 않으면 ( – (삽입 지점 + 1))을 반환합니다. |
2 | 공개 정적 부울 equals(long[], long[] a2) 지정된 두 개의 long 배열이 서로 같으면 true를 반환합니다. 두 배열이 동일한 수의 요소를 포함하고 두 배열에서 해당하는 모든 요소 쌍이 동일한 경우 두 배열은 동일한 것으로 간주됩니다. 두 배열이 같으면 true를 반환합니다. 다른 모든 기본 데이터 유형(Byte, short, Int 등)에서도 동일한 방법을 사용할 수 있습니다. |
3 | 공개 정적 무효 채우기(int[] a, int val) 지정된 int 배열의 각 요소에 지정된 int 값을 할당합니다. 다른 모든 기본 데이터 유형(Byte, short, Int 등)에서도 동일한 방법을 사용할 수 있습니다. |
4 | 공개 정적 무효 정렬(Object[] a) 지정된 개체 배열을 요소의 자연스러운 순서에 따라 오름차순으로 정렬합니다. 다른 모든 기본 데이터 유형( Byte, short, Int 등)에서도 동일한 방법을 사용할 수 있습니다. |
java
동일한 유형의 요소에 대한 고정 크기 순차 컬렉션을 저장할 수 있는 일종의 데이터 구조를 배열합니다. 배열은 데이터 모음을 저장하는 데 사용되지만 종종 배열을 같은 유형의 변수 모음으로 생각하는 것이 더 유용합니다. number0, number1, ..., number99와 같은 개별 변수를 선언하는 대신 숫자와 같은 하나의 배열 변수를 선언하고 숫자[0], 숫자[1], ..., 숫자[99]를 사용하여 표현합니다. 개별 변수. 배열의 특정 요소는 인덱스에 의해 액세스됩니다. 모든 배열은 연속적인 메모리 위치로 구성됩니다. 가장
배열은 동일한 유형의 요소에 대한 고정 크기 순차 컬렉션을 저장합니다. 배열은 데이터 모음을 저장하는 데 사용되지만 배열을 인접한 메모리 위치에 저장된 동일한 유형의 변수 모음으로 생각하는 것이 더 유용합니다. number0, number1, ..., number99와 같은 개별 변수를 선언하는 대신 숫자와 같은 하나의 배열 변수를 선언하고 숫자[0], 숫자[1], ..., 숫자[99]를 사용하여 표현합니다. 개별 변수. 배열의 특정 요소는 인덱스에 의해 액세스됩니다. 모든 배열은 연속적인 메모리 위치로 구성됩니다. 가장 낮은