java
Java에서 length와 length()의 차이점 이해하기
강갱민
2023. 12. 16. 21:42
Java를 사용하면서 흔히 혼동되는 두 가지 개념이 있습니다
배열의 length 속성과 문자열의 length() 메소드입니다. 이 두 가지는 사용법이 매우 비슷하지만, 서로 다른 타입의 객체에 적용되며 다른 역할을 합니다.
배열의 length 속성
Java에서 배열은 고정된 길이를 가지고 있습니다. 배열의 길이, 즉 배열에 저장된 요소의 수는 배열의 length 속성을 통해 알 수 있습니다. length 속성은 배열이 생성될 때 설정되며, 배열의 생명주기 동안 변하지 않습니다.
예를 들어, int[] numbers = {1, 2, 3, 4, 5}; 라는 배열이 있다고 가정해 봅시다.
이 배열의 길이는 numbers.length를 통해 알 수 있으며, 이 경우 5를 반환합니다.
int[] numbers = {1, 2, 3, 4, 5};
int length = numbers.length;
System.out.println("배열의 길이: " + length); // 출력: 배열의 길이: 5
문자열의 length() 메소드
반면, String 객체는 length() 메소드를 사용하여 문자열의 길이를 알 수 있습니다. 이 메소드는 문자열에 포함된 문자의 수를 반환합니다. 문자열의 길이는 문자열이 변경될 때마다 변할 수 있으므로, length() 메소드는 호출될 때마다 문자열의 현재 길이를 계산하여 반환합니다.
예를 들어, "Hello"라는 문자열의 길이를 알고 싶다면, 다음과 같이 length() 메소드를 사용합니다.
String greeting = "Hello";
int length = greeting.length();
System.out.println("문자열의 길이: " + length); // 출력: 문자열의 길이: 5
결론
length 속성과 length() 메소드의 주된 차이는 사용되는 객체 타입과 반환되는 값의 의미입니다.