2009-07-28 8 views
10

이 코드가있는 경우 :그루비지도 구문 오류


def type_3byte_bgr = BufferedImage.TYPE_3BYTE_BGR 
:
illegal colon after argument expression; 
    solution: a complex label expression before a colon must be parenthesized at

작성하는 것보다이 또 다른 해결책이 :


import javax.swing.* 
import java.awt.image.* 

def xMap = [ 
    BufferedImage.TYPE_3BYTE_BGR  : "3 byte BGR", 
    BufferedImage.TYPE_4BYTE_ABGR : "4 byte ABGR", 
] 

는 IDE가이 오류가 발생합니다을 모든 상수에 대해

?

답변

20

지도 리터럴은 키가 유효한 식별자이거나 괄호 안에 있어야합니다. 작동해야 함 :

def xMap = [ 
    (BufferedImage.TYPE_3BYTE_BGR)  : "3 byte BGR", 
    (BufferedImage.TYPE_4BYTE_ABGR) : "4 byte ABGR",] 
2

오류 메시지는 해결 방법을 알려줍니다. 레이블 표현식을 괄호로 묶으십시오.

import java.awt.image.BufferedImage 

def xMap = [ 
    (BufferedImage.TYPE_3BYTE_BGR)  : "3 byte BGR", 
    (BufferedImage.TYPE_4BYTE_ABGR) : "4 byte ABGR", 
] 

println xMap[BufferedImage.TYPE_3BYTE_BGR] 
+4

언어를 제어하십시오. – Geo