Java시작과 문법

배열과 String

Java의 배열과 `String`을 함께 보면서 길이, 변경 가능성, 순회 방식, 자주 하는 실수를 정리합니다.

마지막 수정 2026년 3월 22일

기본 패턴

java
String[] names = {"Kim", "Lee", "Park"};

for (String name : names) {
    System.out.println(name);
}

설명

  • 배열은 같은 타입 원소를 고정 길이로 담는 구조입니다. 생성 후 길이가 바뀌지 않으므로, 크기가 계속 달라지는 데이터에는 컬렉션이 더 잘 맞습니다.
  • String은 배열처럼 문자들을 담지만, Java에서는 별도의 객체 타입입니다. 그래서 길이는 length() 메서드로 구하고, 배열 길이는 length 필드로 구한다는 차이를 자주 구분해야 합니다.
  • 문자열 연결은 +로도 가능하지만, 반복적인 문자열 조합은 StringBuilder가 더 적합할 때가 많습니다.
  • 배열은 인덱스로 접근하기 쉬워서 기초 학습에 좋지만, 실무에서는 List 같은 컬렉션으로 넘어가는 경우가 많습니다. 배열은 기본기이면서 컬렉션을 이해하는 출발점입니다.
  • 결국 배열과 String 카드는 "둘 다 자주 쓰지만, 하나는 고정 길이 저장 구조이고 하나는 불변 객체"라는 차이를 먼저 잡는 것이 핵심입니다.

빠른 정리

항목특징
배열같은 타입, 고정 길이
String문자 시퀀스를 담는 불변 객체
배열 길이arr.length
문자열 길이str.length()
반복 연결StringBuilder가 더 적합할 때가 많음

주의할 점

배열의 length와 문자열의 length()를 헷갈리는 건 Java 입문자에게 매우 흔한 실수입니다. 또 String은 객체라서 비교할 때 ==보다 equals()가 더 중요하다는 점도 함께 기억하세요.

참고 링크

2 sources