2009-08-25 7 views
8

मेरे पास दो सरणी हैं:दो सूचियों से वस्तुओं के सभी संभावित जोड़े की गणना करें?

string[] Group = { "A", null, "B", null, "C", null }; 

string[] combination = { "C#", "Java", null, "C++", null }; 

मैं सभी संभावित संयोजनों को वापस लौटना चाहता हूं जैसे:

{ {"A","C#"} , {"A","Java"} , {"A","C++"},{"B","C#"},............ } 

शून्य को अनदेखा किया जाना चाहिए।

उत्तर

27
Group.Where(x => x != null) 
    .SelectMany(g => combination.Where(c => c != null) 
           .Select(c => new {Group = g, Combination = c})); 
वैकल्पिक रूप से

:

तत्काल प्रतिक्रिया के लिए
from g in Group where g != null 
from c in combination where c != null 
select new { Group = g, Combination = c } 
+0

धन्यवाद Mehrdad। – user160677

+1

कोई विचार नहीं कि क्रमपरिवर्तन न केवल संयोजनों को प्राप्त करने के लिए इसे कुशलता से कैसे किया जाए? (जिसका अर्थ है {"ए", "सी #"} और {"सी #", "ए"} को दो अलग-अलग आइटम माना जाएगा)? –

संबंधित मुद्दे