从2创建逗号分隔字符串列出groovy方式

Mic*_*cor 2 groovy

到目前为止我所拥有的是:

def imageColumns = ["products_image", "procuts_subimage1", "products_subimage2", "prodcuts_subimage3", "products_subimage4"]    
def imageValues = ["1.jpg","2.jpg","3.jpg"]
def imageColumnsValues = []

// only care for columns with values
imageValues.eachWithIndex { image,i ->
  imageColumnsValues <<  "${imageColumns[i]} = '${image}'"
}

println  imageColumnValuePair.join(", ") 
Run Code Online (Sandbox Code Playgroud)

它有效,但我认为它会更好.希望有一个collectWithIndex ...有什么建议吗?

ata*_*lor 6

没有collectWithIndex,但您可以通过一点努力获得相同的结果:

def imageColumns = ["products_image", "procuts_subimage1", "products_subimage2", "prodcuts_subimage3", "products_subimage4"]
def imageValues = ["1.jpg","2.jpg","3.jpg"]

def imageColumnsValues = [imageValues, 0..<imageValues.size()].transpose().collect { image, i ->
    "${imageColumns[i]} = '${image}'"
}

println imageColumnsValues.join(", ")
Run Code Online (Sandbox Code Playgroud)

这将获取项目列表和0大小(列表) - 1中的一系列数字,并将它们与之一起拉链transpose.然后你可以收集结果.