Skip to content

Latest commit

 

History

History
68 lines (63 loc) · 3.35 KB

File metadata and controls

68 lines (63 loc) · 3.35 KB

1. 배열

  • int a1 = 1, int a2 = 2, int a3 = 3.... int a15 = 15;
  • 순차적인 순번을 가지고 있는 변수들의 집합. 같은 자료형의 변수와 값만 가질 수 있다.
  • 배열의 선언 : 자료형[] 배열이름 = new 자료형[배열의 길이]; ex) int[] numArr = new int[15]; (인덱스 : 0 ~ 14)
  • 배열 값의 사용 : 배열이름[꺼내올 값의 인덱스(순번)] ex) System.out.println(numArr[0]);
  • 배열 사용 시 주의할 점 인덱스(순번)은 0부터 진행된다.
  • 배열의 초기화 방법
    1. 각각의 인덱스에 접근하여ㅐ 직접 입력하는 방식
      ex) numArr[5] = 15;
      numArr[9] = 10;
    2. 반복문을 이용하여 초기화 하는 방식
      ex) for(int i = 0; i < 15; i++)
      {
      numArr[i] = 2*i; // 2의 배수
      }
    3. 선언과 동시에 초기화하는 방식
      ex) //길이가 3인 배열이 만들어지며 동시에 값은 1,2,3으로 초기화된다. int[] arr = {1, 2, 3};
  • 배열의 길이를 확인하는 length : java에서 제공하는 Array 클래스 안에 존재하는 변수로 선언한 배열의 길이를 확인할 수 있다. ex) int[] arr = new int[50]; // 배열의 길이인 50을 출력함 System.out.println(arr.length);

2. 객체 배열

  • 객체 배열의 선언 : 크래스명[] 배열이름 = new 클래스명 [배열의 길이];

  • 객체 배열의 사용도 일반 배열의 사용과 동일하게 인덱스로 접근하여 사용한다. ex) Course[] courseArr = new Course[3]; //인스턴스화 되어 객체를 넣어주지 않았기 때문에 0~2 인자에는 null값이 들어간다.

  • 객체 배열은 초기화를 할 때 생성자를 통한 인스턴스를 만들어서 입력해줘야 된다.
    ex) courseArr[0] = new Course();
    courseArr[1] = new Course();

    for(int i =0; i < courseArr.length; i++)  
    {  
      courseArr[i] = new Course();  
    }  
    
  • 인스턴스화된 객체를 넣어주지 않으면 null값이 출력된다.

3. 향상된 for

  • 사용법 :
    int[] intArr = new int[50];
    //int num은 intArr의 값을 하나씩 꺼내서 담아줄 변수(인덱스 순서대로 진행됨) int sum = 0; //intArr.length만큼 반복 for(int num : intArr) {
    //num에 담긴 값 사용하는 소스코드 sum += num; }
  • 향상된 for문은 배열의 인자를 하나씩 꺼내서 사용하는 방식. 인덱스 순서대로 하나씩 꺼내서 사용하는 방식. 하나씩 꺼낸 값을 담아줄 변수의 타입과 배열의 타입이 일치해야 한다.

4. 배열의 복사

  • 배열도 참조형 변수로 heap 메모리에 배열의 저장된다.
  • 깊은 복사는 heap 메모리에 생성된 배열을 복사하여 heap 메모리 영역에 새로 하나 만드는 작업
  • 깊은 복사는 clone()메서드나 System.arraycopy() 메서드를 이용해서 진행.
  • 얕은 복사는 배열을 새로 생성하지 않고 생성된 배열의 주소값을 복사하므로써 같은 배열을 공유해서 사용

5. 난수(랜덤) 발생

  • java에서 지원하는 Math 클래스를 이용하여 Math.radom() 메서드로 난수를 발생시킬 수 있다.
  • 0 <= Math.random() < 1 실수인 0.12544.... 임의 값이 발생됨