我正试图像一个阵列
[ "First.Package", "Second.Package" ]
Run Code Online (Sandbox Code Playgroud)
把它变成
[ "First.Package.ads", "First.Package.adb", "Second.Package.ads", "Second.Package.adb" ]
Run Code Online (Sandbox Code Playgroud)
我尝试过以下方法:
packages = [ "First.Package", "Second.Package" ]
files = []
packages.each do |package|
files << (package << ".ads")
files << (package << ".adb")
end
return files
Run Code Online (Sandbox Code Playgroud)
这不符合我认为它应该做的事情.我明白了:
First.Package.ads.adb
First.Package.ads.adb
Second.Package.ads.adb
Second.Package.ads.adb
Run Code Online (Sandbox Code Playgroud)
我想要:
First.Package.ads
First.Package.adb
Second.Package.ads
Second.Package.adb
Run Code Online (Sandbox Code Playgroud)
packages = ["First.Package", "Second.Package"]
suffixes = [".ads", ".adb"]
packages.product(suffixes).map(&:join)
#=> ["First.Package.ads", "First.Package.adb",
# "Second.Package.ads", "Second.Package.adb"]
Run Code Online (Sandbox Code Playgroud)
注意
packages.product(suffixes)
#=> [["First.Package", ".ads"], ["First.Package", ".adb"],
# ["Second.Package", ".ads"], ["Second.Package", ".adb"]]
Run Code Online (Sandbox Code Playgroud)
请参见Array#product.
| 归档时间: |
|
| 查看次数: |
43 次 |
| 最近记录: |