>Java >java지도 시간 >선언되지 않은 Java 배열을 중괄호를 사용하여 직접 초기화할 수 없는 이유는 무엇입니까?

선언되지 않은 Java 배열을 중괄호를 사용하여 직접 초기화할 수 없는 이유는 무엇입니까?

Linda Hamilton
Linda Hamilton원래의
2024-12-09 10:24:20407검색

Why Can't I Initialize a Non-Declared Java Array Directly with Curly Braces?

선언되지 않은 배열에 대한 배열 초기화 구문

Java에서 배열을 초기화하면 배열이 동시에 선언되지 않을 때 미묘한 차이가 나타납니다. 다음 구문은 유효하지만:

AClass[] array = {object1, object2};

이 구문도 허용됩니다.

AClass[] array = new AClass[2];
...
array[0] = object1;
array[1] = object2;

다음 코드는 허용되지 않습니다.

AClass[] array;
...
array = {object1, object2};

제한 이유

이 제한 이유는 여전히 미스터리로 남아 있습니다. 근본적인 문법적 이유 때문입니다. Java 1.0에는 없었지만 이후 버전에 도입되었습니다.

해결 방법

한 가지 해결 방법은 다음 구문을 사용하는 것입니다.

AClass[] array;
...
array = new AClass[]{object1, object2};

위 내용은 선언되지 않은 Java 배열을 중괄호를 사용하여 직접 초기화할 수 없는 이유는 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.