[java] Java 일반 클래스를 만들 때 꺾쇠 괄호 안의 물결표는 무엇을 의미합니까?
몇 가지 JMockit 예제를 읽고이 코드를 찾았습니다.
final List<OrderItem> actualItems = new ArrayList<~>();
일반 식별자의 물결표는 무엇을 의미합니까? 단항 비트 NOT 연산자라는 것을 알고 있지만 여기에는 피연산자가 표시되지 않습니다.
또한 컴파일을 시도했는데 오류가 발생했습니다. 내가 뭔가를 놓치고 있습니까?
답변
“same as in declaration”의 약어 일뿐입니다.
IntelliJ와 같은 일부 IDE도 이것을 사용합니다.
디스크의 파일에는 IDE GUI의 압축 일 뿐인이 표기법이 없습니다.
답변
물결표가 없다면 코드는 이미 Java 7이었습니다. Java 7은 다이아몬드 연산자를 허용 하므로 이것은 합법적 인 Java 코드입니다.
Map<String, List<String>> map = new HashMap<>();
(그러나-이 구문에서는 물결표 없음)
답변
IntelliJ IDEA에서 ~
여기 :
Set<String> associations = new LinkedHashSet<~>();
을 의미합니다 String
. 이는 왼쪽의 선언과 동일합니다.
답변
유형이 무엇이든,이 경우에는 OrderItem 을 의미하는 속기라고 생각합니다 .