[Java] Array

임혜정 ·2021년 5월 19일
0

Java

목록 보기
11/16
post-thumbnail

여러 개의 변수 사용 vs array 사용

array를 사용하는 경우 : 각각의 index가 의미있을때 사용한다


Array


  • 같은 type의 data들을 모아놓은 자료구조이다.
  • 객체로 처리한다
  • 참조변수이다.
  • stack에 할당하는것이 아닌, heap에 할당한다.
  • 변수의 선언과, 생성은 별도이다.

Array 선언과 생성


double myList[] = new double[10];

- 선언 ( 변수정의 ( 화살표 ))

double[] myList;

- 생성 (heap에 생성)

new double[10];

Array의 길이


myList.length

  • Array는 한번 만들면 크기는 고정이다 (크기를 변경하기 위해서는 아래 array 복사 참고)
  • 변경이 불가능하다

Array index


  • array의 원소는 index를 사용하여 접근이 가능하다

    • myList[index]
  • index는 0부터 myList.length-1 까지 사용한다

Array 초기화


  • 한줄로 해준다

    • double[] myList = {1.9, 2.9, 3.9, 4.9};
  • 선언과 생성을 따로하여 초기화 할경우 syntax error 발생

    • doublie[] myList;
      myList={1.9, 2.9, 3.9, 4.9};

반복문을 통한 배열 접근


  • 반복문을 통하여 배열에 접근할 수 있다
  • enhanced for문을 통해 배열에 접근할 수 있다.
    • for(자료형 변수명 : 배열명) // 0부터 끝까지 배열의 값을 arr2에 대입해준다.
public class Main {

	public static void main(String[] args){
		float[] arr = new float[5];
		
		for(int i=0; i<arr.length; i++) {
			System.out.println(arr[i]);
		}
		
		for(float arr2: arr) {
			System.out.println(arr2);
		}

	}
}

Array 복사


  • 새로운 array를 생성한다.
  • 생성된 array에 값을 넣어준다.
  • arraycopy를 사용한다.
    • System.arraycopy(sourceArray, src_pos, targetArray, tar_pos, length);

ex)

문자 배열을 생성하고 출력해 보세요.
대문자를 A-Z까지 배열에 저장하고 이를 다시 출력하는 프로그램을 만들어 보세요.

public class Main {

	public static void main(String[] args) {
		char[] alphabets = new char [26];
		
		char ch= 'A';
		
		for(int i=0; i<alphabets.length; i++) {
			alphabets[i] += ch++;
		}
		
		for(int i=0; i<alphabets.length; i++) {
			System.out.println(alphabets[i]+ ":"+ (int)alphabets[i]);
		}
	}
}
profile
포기하지 않고 끝까지 🐥

0개의 댓글

관련 채용 정보