เนื่องจาก groovy ไม่มีเครื่องหมาย EOL (เช่น ;
) จึงสับสนหากคุณใส่ตัวดำเนินการในบรรทัดต่อไปนี้
สิ่งนี้จะใช้งานได้แทน:
def a = "test" +
"test" +
"test"
เนื่องจากตัวแยกวิเคราะห์ Groovy รู้ว่าจะคาดหวังบางสิ่งในบรรทัดต่อไปนี้
Groovy มองว่าต้นฉบับของคุณdef
เป็นสามประโยคแยกกัน คนแรกมอบหมายtest
ให้a
สองคนที่สองพยายามทำให้"test"
เป็นบวก (และนี่คือจุดที่ล้มเหลว)
ด้วยnew String
วิธีการสร้างตัวแยกวิเคราะห์ Groovy ยังคงอยู่ในตัวสร้าง (เนื่องจากวงเล็บปีกกายังไม่ปิด) ดังนั้นจึงสามารถรวมสามบรรทัดเข้าด้วยกันเป็นคำสั่งเดียวอย่างมีเหตุผล
สำหรับสตริงหลายบรรทัดที่แท้จริงคุณยังสามารถใช้เครื่องหมายคำพูดสามบรรทัด:
def a = """test
test
test"""
จะสร้างสตริงที่มีการทดสอบสามบรรทัด
นอกจากนี้คุณสามารถทำให้มันดูดีขึ้นได้โดย:
def a = """test
|test
|test""".stripMargin()
stripMargin
วิธีการจะตัดซ้าย (และรวมทั้ง|
ถ่าน) จากแต่ละบรรทัด
def a = b + + "/" + c
ในกรณีที่จะช่วยให้คนอื่นคุณจะได้รับข้อผิดพลาดเดียวกันด้วยรหัสเช่น ในกรณีนี้เห็นได้ชัดว่าสัญลักษณ์ + สองตัวเป็นปัญหา