다른 답변의 누군가가 코드를 게시했습니다.변수 유형 정의와 다른 점은 무엇입니까?
List<ISpeak> animalsThatTalk = new ArrayList<ISpeak>();
<>는 무엇을합니까?
업데이트
두 번째 예제가 컴파일되지 않는다는 것을 알고 있습니다 ... 혼란으로 인해 제 질문을 수정했습니다.
다른 답변의 누군가가 코드를 게시했습니다.변수 유형 정의와 다른 점은 무엇입니까?
List<ISpeak> animalsThatTalk = new ArrayList<ISpeak>();
<>는 무엇을합니까?
업데이트
두 번째 예제가 컴파일되지 않는다는 것을 알고 있습니다 ... 혼란으로 인해 제 질문을 수정했습니다.
유형 매개 변수에는 꺽쇠 괄호 (<...>
)가 사용됩니다. 유형을 입력해야합니다 (예 : Integer
또는 String
입니다. 값 매개 변수에는 둥근 괄호가 사용되고 값을 입력해야합니다. 1 또는 "Hello World".
예 :
new ArrayList<String>(3)
이 초기 용량 3. String
와 문자열의 새로운리스트를 정의는 입력 파라미터이다. 3
은 값 매개 변수입니다.
귀하의 질문은 <> vs()의 사용에 관한 것 같습니다. 컬렉션은 일반적으로 컬렉션의 매개 변수 또는 유형을 지정해야합니다. <>이이를 수행하는 데 사용됩니다. 귀하의 예제에서 그래서
입력 ISpeak의 목록이
List<ISpeak>
당신은 또한 정수
List<Integer>
<의 목록을 만들 수 있습니다 생성되는> 단순히 당신의 유형을 정의 할 수 있습니다 컬렉션에 포함될 개체입니다.
List (Speak) animalsThatTalk
가 컴파일되지 않습니다 두 번째 예. 컴파일러는 Speak라는 인수를 사용하여 List 함수를 호출하려고 시도합니다.
두 번째 예제는 컴파일하는 것조차 거의하지 않습니다. – Falmarri
무엇? 나는 당신이 괄호로 무엇을하려하는지 이해하지 못합니다. –
어? 두 번째 예제에서는 구문을 얻지 못합니다. 'List animalsThatTalk = new ArrayList ();'을 의미하지 않았습니까? –
birryree