虽然我试图在Ruby中解决这个问题,但我欢迎其他语言的建议,我可以回到Ruby。
我有任何数组:
color = ["red", "green", "blue"]
size = ["small", "medium", "large"]
style = ["loose", "tight"]
我需要为每个可能的组合创建字符串。例如:
"red small loose", "red small tight", "red medium loose", "red medium tight", "red large loose", "red large tight", "green small loose", etc...
我愿意接受任何建议。
答案 0 :(得分:5)
>> color.product(size, style).map { |strings| strings.join(" ") }
#=> ["red small loose", "red small tight", ..., "blue large tight"]
答案 1 :(得分:0)
如果数组的数量不是太高(低于5),您可以编写嵌套循环。 Semicode:
for x = 0; x < color.size; x ++
for y = 0; y < color.size; y ++
for z = 0; z < color.size; z ++
return color[x] + size[y] + style[z]
z = z+1
y = y+1
x = x+1
虽然我对Ruby一无所知,但这基本上可以工作。
答案 2 :(得分:0)
Ruby为数组提供product
方法,或者你可以只使用循环。
color.each do |color|
size.each do |size|
style.each do |style|
puts "#{color} #{size} #{style} "
end
end
end
答案 3 :(得分:0)
color.product(size, style)
将完成工作