-1

如何从groovy中的字符串引用对象?我有很多对象 - reviewSyd1、reviewSyd2..reviewSyd30 我需要添加到对象 - sydney。我有循环

for(i in 1..30){
  sydney.addToReviews("reviewSyd$i")
}

这是行不通的。如何使它工作?

谢谢你

更新澄清(对不起,如果我不清楚)

class Review{
   String email
   String Content

}

def rev1 = new Review(email:'one@homail.com',content:'i really like it')
def rev2 = new Review(email:'two@homail.com',content:'i really like it')
def rev3 = new Review(email:'three@homail.com',content:'i really like it')
def rev4 = new Review(email:'four@homail.com',content:'i really like it')

for(i in 1..4){
   println rev$i.email
}

如何引用对象 -revX 其中 x 是迭代器?

4

1 回答 1

1
println rev$i.email    

并不是那种动态是时髦的。这不是一个有效的 groovy 语法。将您想要稍后在代码中访问的那些对象放在一个集合中。

def revs = []
revs << new Review(email:'one@homail.com',content:'i really like it')
revs << new Review(email:'two@homail.com',content:'i really like it')
revs << new Review(email:'three@homail.com',content:'i really like it')
revs << new Review(email:'four@homail.com',content:'i really like it')

那么您将参考它们:

revs.each{
   println it.email
}
于 2012-12-03T02:03:41.740 回答