有沒有方法或一些聰明的方法,很容易閱讀,使Groovy中的元素成爲combination?我知道Iterable#combinations
或GroovyCollections#combinations
,但它使得部分排列重複據我瞭解到目前爲止。看例子。Groovy中的真實組合
// Groovy combinations result
def e = ['a', 'b', 'c']
def result = [e, e].combinations()
assert [['a', 'a'], ['b', 'a'], ['c', 'a'], ['a', 'b'], ['b', 'b'], ['c', 'b'], ['a','c'], ['b', 'c'], ['c', 'c']] == result
// What I'm looking for
def e = ['a', 'b', 'c']
def result = ???
assert [['a', 'b'], ['a', 'c'], ['b', 'c']] == result
隨意張貼替代解決方案。我仍然在尋找更好的可讀性(它在腳本中用於非開發人員)和性能(沒有不必要的迭代)。
謝謝。就一件事。你甚至不必測試!= b cos這個條件包含在 2014-10-09 08:57:24
這是真的,編輯它。謝謝。 – Kaffeleif 2014-10-09 09:04:34