Tôi nghĩ rằng tôi đã có một số kỳ vọng hài hước ... Tôi muốn lặp lại các số từ 1 đến 10. Như một vòng lặp trong khi nó đi như thế này:gọi .each {} trên IntRange trả về phạm vi không phải mỗi số nguyên
def countMe = 1
while (countMe<11) {
println countMe
countMe++
}
tôi đã mong rằng những điều sau đây sẽ làm điều này cũng:
[1..10].each { println it }
Nhưng nó thực sự in các IntRange
, không phải mỗi Integer
trong phạm vi. Cách gần nhất (cú pháp) cho hình ảnh [x..y].each{}
của tôi là gì để có được một danh sách các số?
Bạn cần phải nhớ [1..10] chỉ có nghĩa là phạm vi khi đó là một chỉ số SAU một biến khác. Khi nó đứng một mình, thì đó là DANH SÁCH của một phạm vi. Những mâu thuẫn nhỏ này phát sinh do Groovy cố gắng mở rộng cú pháp của Java với các bổ sung riêng của nó. –