답변:
예, .length
(방법이 아닌 속성과 유사) :
String[] array = new String[10];
int size = array.length;
array.length
실제로는 메소드가 아닌 배열의 최종 멤버입니다.
또한 다차원 배열이있는 경우 적절한 축 / 튜플 / 차원에 도달 할 때까지 쿼리중인 배열에 '[0]'을 추가하여 각 차원을 얻을 수 있습니다.
이것은 아마도 다음 코드로 더 잘 설명 될 것입니다.
public class Test {
public static void main(String[] args){
String[][] moo = new String[5][12];
System.out.println(moo.length); //Prints the size of the First Dimension in the array
System.out.println(moo[0].length);//Prints the size of the Second Dimension in the array
}
}
출력을 생성합니다.
5
12
배열은 객체이며 길이 필드가 있습니다.
String [] haha = { "olle", "bulle"};
haha.length는 2입니다
자바에는 length
배열에서 크기를 알 수 있는 필드가 있습니다.
String[] s = new String[10];
System.out.println(s.length);
대답은 "모두"입니다. Java 배열에는 고정 된 수의 요소 슬롯이 할당됩니다. "길이"속성은 몇 개인 지 알려줍니다. 이 숫자는 어레이 수명 동안 변경할 수 없습니다. 크기 조정이 가능한 동등한 경우 java.util.List 클래스 중 하나가 필요합니다. size () 메소드를 사용하여 사용중인 요소 수를 찾을 수 있습니다.
그러나, "사용에서"거기하고있어 사용 중 . 클래스 객체 배열에서 요소가 null 객체 인 요소 슬롯을 가질 수 있으므로 길이 속성에 포함되지만 대부분의 사람들의 정의는 사용되지 않습니다 (응용 프로그램에 따라 YMMV). 널 / 널이 아닌 수를 리턴하기위한 내장 함수가 없습니다.
목록 개체에는 "사용 중"에 대한 또 다른 정의가 있습니다. 기본 스토리지 구조의 과도한 생성 / 파괴를 피하기 위해 이러한 클래스에는 일반적으로 패딩이 있습니다. 내부적으로 사용되지만 반환 된 size () 메서드에는 포함되지 않습니다. 그리고 add 메소드를 통해 List를 확장하지 않고 해당 항목에 액세스하려고하면 잘못된 색인 예외가 발생합니다.
따라서 목록의 경우 널이 아닌 커미트 된 요소, 커미트 된 모든 요소 (널 요소 포함) 또는 현재 할당 된 확장 공간을 포함한 모든 요소에 대해 "사용 중"을 가질 수 있습니다.
위의 모든 답변이 적절합니다. 관찰해야 할 중요한 것은 배열에는 길이 속성이 있지만 길이 방법은 없습니다. Java에서 문자열과 배열을 사용할 때마다 직면 할 수있는 세 가지 기본 모델은 다음과 같습니다.
실제로 귀하의 질문에 대한 대답은 아니지만 배열을 늘리거나 줄일 수있는 배열을 원한다면 java에서 배열을 사용하지 않아야합니다. ArrayList 또는 다른 List 구현 을 사용하는 것이 가장 좋습니다 .
그런 다음 size ()를 호출하여 크기를 얻을 수 있습니다.