본문 바로가기
Club/99클럽 코테 스터디 2기

99클럽 코테 스터디 11일차 TIL 배열과 리스트

by ʚ⇜❅🎕̈❄⇝ɞ 2024. 5. 30.
728x90
반응형

Java 배열과 리스트

  • 배열 (Array)
    • 메모리의 연속 공간에 값이 채워져 있는 형태의 자료구조
    • 값은 인덱스를 통해 접근 가능하다.
    • 배열의 크기는 선언할 때 지정하고, 그 후에 늘리거나 줄일 수 없다.
    • 특정 인덱스에 있는 값을 삭제하기 어렵다.
    • 구조가 간단하여 코딩 테스트에서 많이 사용한다.
  • 리스트 (List)
    • 값과 포인터를 묶은 노드를 포인터로 연결한 자료구조
    • 인덱스가 없어 Head 포인터부터 순서대로 접근해야 한다.
    • 포인터로 연결되어 있으므로 삽입, 삭제 연산이 빠르다.
    • 크기가 정해져 있지 않아서 가변적인 데이터를 다룰 때 적합하다.
    • 포인터를 저장할 공간이 필요하므로 배열보다 구조가 복잡하다.
// 배열
String[] array = new String[100];
int[] arr = new int[]{1, 2, 3};
int[] arr2 = {1, 2, 3};

// 리스트
List<String> list = new ArrayList<>();
728x90

알게 된 점

  • Array는 실무에서는 List 가 더 많이 쓰이는 것 같은데, 코테에서 많이 사용한다.
  • List는 값과 포인터를 모두 저장하고 있어서 array 보다 메모리를 더 많이 차지한다.

다음에 학습할 것

  • Array의 메서드
  • List의 메서드
반응형

Java 코딩 테스트 문제를 풀면, 배열이 더 편할 때가 있고, 리스트가 더 편할 때가 있다. 두 자료구조의 차이와 특징을 정확히 알고 사용해야겠다.

728x90
반응형

댓글