Latest web development tutorials

자바 배열

데이터 구조에 대한 각각의 프로그래밍 언어에 대한 하나의 배열은 물론, 다양한 언어 및 어레이의 실현 방법이 동일하지 중요하다.

자바 언어는 배열이 동일한 유형의 고정 사이즈 요소를 저장하는데 사용된다 제공한다.

당신은 같은 번호 [100] 대신 직접 문 (100) 독립 변수의 number0, 숫자 1, ..., number99 같은 변수의 배열을 선언 할 수 있습니다.

이 튜토리얼은 자바를 배열 생성 및 초기화를 선언 소개하고 해당 코드를 제공합니다.


배열 변수를 선언

먼저 당신이 당신의 프로그램에서 배열을 사용하여 배열 변수를 선언해야합니다. 다음은 배열 변수를 선언하기위한 구문은 다음과 같습니다

dataType[] arrayRefVar;   // 首选的方法

或

dataType arrayRefVar[];  // 效果相同,但不是首选方法

참고 : 우리는 dataType와 [] arrayRefVar 스타일의 문은 배열 변수를 선언 사용하는 것이 좋습니다. C / C ++ 언어에서 파생 된 dataType와 arrayRefVar [] 스타일은, 자바는 빠르게 자바 언어를 이해할 수있는 C / C ++ 프로그래머를 만드는 데 사용됩니다.

여기에 두 구문은 코드 예제를 다음과 같습니다

double[] myList;         // 首选的方法

或

double myList[];         //  效果相同,但不是首选方法

배열 만들기

다음과 같이 배열을 생성하기 위해 new 연산자를 사용하여 Java 언어, 구문은 다음과 같습니다

arrayRefVar = new dataType[arraySize];

위의 구문 문장은 두 가지 작업을 수행 :

  • 첫째, dataType와 [arraySize] 배열을 만들어 사용합니다.
  • 둘째, 새롭게 생성 된 배열에 대한 참조는 변수 arrayRefVar 할당된다.

배열 변수를 선언, 어레이는 다음과 같은 구문을 생성 완료하는데 사용될 수있다 :

dataType[] arrayRefVar = new dataType[arraySize];

또한, 다음과 같은 방법을 사용하여 배열을 만들 수 있습니다.

dataType[] arrayRefVar = {value0, value1, ..., valuek};

배열의 요소는 인덱스를 통해 액세스 할 수 있습니다. 배열 인덱스 0에서 시작하므로 arrayRefVar.length-0에서 1까지의 인덱스 값.

먼저 다음 문은 배열 변수으로 myList 선언 후 10 요소가 double 형의 배열을 포함, 그 기준은으로 myList 변수에 할당 만들었습니다.

public class TestArray {

   public static void main(String[] args) {
      // 数组大小
      int size = 10;
      // 定义数组
      double[] myList = new double[size];
      myList[0] = 5.6;
      myList[1] = 4.5;
      myList[2] = 3.3;
      myList[3] = 13.2;
      myList[4] = 4.0;
      myList[5] = 34.33;
      myList[6] = 34.0;
      myList[7] = 45.45;
      myList[8] = 99.993;
      myList[9] = 11123;
      // 计算所有元素的总和
      double total = 0;
      for (int i = 0; i < size; i++) {
         total += myList[i];
      }
      System.out.println("总和为: " + total);
   }
}

위 예제의 출력은 다음과 같습니다

总和为: 11367.373

다음 그림은 배열으로 myList를 보여줍니다. 다음으로 myList 10 번 배열 요소, 0-9에서 인덱스가 있습니다.

자바 어레이 구조 기술


배열을 사용한 작업

어레이의 어레이 요소의 크기 및 종류가 결정되므로, 배열 요소를 처리 할 때, 우리는 일반적으로 기본 루프 또는 Foreach 루프를 사용한다.

이 예는 초기화하고 배열을 조작, 전체를 만드는 방법을 보여줍니다 :

public class TestArray {

   public static void main(String[] args) {
      double[] myList = {1.9, 2.9, 3.4, 3.5};

      // 打印所有数组元素
      for (int i = 0; i < myList.length; i++) {
         System.out.println(myList[i] + " ");
      }
      // 计算所有元素的总和
      double total = 0;
      for (int i = 0; i < myList.length; i++) {
         total += myList[i];
      }
      System.out.println("Total is " + total);
      // 查找最大元素
      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

foreach 루프

JDK 1.5, 루프의 새로운 유형을 도입 foreach 루프 또는 향상된 순환, 그것은 배열 첨자를 통해 상황에서 사용하지 않는했다.

이 예는 어레이 myList에있는 모든 요소를 ​​표시하기 위해 사용된다 :

public class TestArray {

   public static void main(String[] args) {
      double[] myList = {1.9, 2.9, 3.4, 3.5};

      // 打印所有数组元素
      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] + " ");
  }
}

다음은 3,1,2,6,4 2를 인쇄 할 printArray 메소드를 호출합니다 :

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 클래스는 쉽게 모든 방법이 정적 제공, 배열을 조작 할 수 있습니다. 그것은 다음과 같은 기능을 가지고 있습니다 :

  • 배열 할당에 : 방법을 작성합니다.
  • 배열을 정렬 : 정렬 방법을 통해, 오름차순.
  • 배열을 비교 다음은 방법은 상대적이다 배열 요소의 값이 같은 같습니다.
  • 배열 요소를 찾기 : binarySearch 방법으로 이진 검색 작업의 배열을 정렬 할 수 있습니다.

구체적인 설명은 다음 표를 참조하십시오

아니오. 방법 및 설명
(1) 공공 정적 INT binarySearch (객체 [] A, 개체 키)
주어진 값 (바이트, 지능, 더블, 등)에 대한 지정된 배열 검색에서 개체를 사용하여 이진 검색 알고리즘. 배열은 호출하기 전에 정렬해야합니다. 조회 값을 배열, 검색 키 리턴의 인덱스에 포함되어있는 경우, 그렇지 않은 경우는 (- (삽입 포인트) - 1).
공공 정적 부울 등호 (긴 [] 길고 [] A2)
서로 동등한 길이의 두 개의 지정된 배열, 그건 사실 반환합니다. 두 배열이 동일한 요소의 수, 모든 요소에 대응 쌍 두 배열이 포함 된 경우 2 개의 배열이 동일한 것으로 간주됩니다, 동일하다. 즉, 두 배열에서 같은 요소를 포함하는 동일한 순서로 두 어레이는 동일한 경우. 같은 다른 모든 기본 데이터 유형 (바이트, 짧은, 지능 등)에 적용됩니다.
3 공공 정적 무효 채우기 (INT [] A, INT의 발)
int 값은 각 요소의 지정된 범위의 지정된 int 배열을 할당합니다. 같은 다른 모든 기본 데이터 유형 (바이트, 짧은, 지능 등)에 적용됩니다.
4 공공 정적 무효 정렬 (객체 [] A)
요소의 자연 순서에 따라 오름차순으로 지정된 객체의 배열. 같은 다른 모든 기본 데이터 유형 (바이트, 짧은, 지능 등)에 적용됩니다.