If I have this code :
import javax.swing.*
import java.awt.image.*
def xMap = [
BufferedImage.TYPE_3BYTE_BGR : "3 byte BGR",
BufferedImage.TYPE_4BYTE_ABGR : "4 byte ABGR",
]
the IDE will generate this error :
illegal colon after argument expression; solution: a complex label expression before a colon must be parenthesized at
Is there another solution to this than to write :
def type_3byte_bgr = BufferedImage.TYPE_3BYTE_BGR
for all the constants?
Map literals require their keys to be valid identifiers or in parentheses. This should work:
def xMap = [
(BufferedImage.TYPE_3BYTE_BGR) : "3 byte BGR",
(BufferedImage.TYPE_4BYTE_ABGR) : "4 byte ABGR",]
The error message tells you how to solve it: parenthesize the label expression.
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]
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With