2016-09-10 10 views
-2

私のプログラムでは、2つ以上の配列を持つことができました。このように見て何か:複数の配列で等しい値を見つけるにはどうすればよいですか?

int[] aa = new int[5] {23, 63, 99, 26, 13}; 
int[] bb = new int[3] {99, 13, 23}; 
int[] cc = new int[7] {5, 23, 72, 88, 99, 100, 65}; 

各アレイ内の各番号は一意であるが、別々の配列で一致する数字があるかもしれません。

は番目のすべてのアレイを通じて一致一致するすべての番号を見つける簡単な方法はありますか?

+0

あなたは試してみましたいくつかのコードを追加することはできますか? – Shiham

+0

「array1の値とarray2の値が等しい」とはどういう意味ですか?すべての配列に値が存在するかどうかを確認しますか? –

答えて

0

あなたは、LINQを使用することができます。重複がある場合は、あなただけの、知っておく必要がある場合:

array1.Any(value1 => array2.Any(value2 => value2.Equals(value3)) &&array3.Any(....)) 

あなたが重複した値そのものが必要な場合は、どこでアレイ1の後ろに任意の最初を交換してください。

4

あなたは、複数の配列の交点を見つけようとしていますか?次のコードスニペットは、この使用してLINQのIntersect方法を行う方法を示しています

// using System.Linq; 
var array1 = new[] { 1, 2, 3, 4, 5, 6, 7, 8, 9 }; 
var array2 = new[] { 2, 3, 4, 5, 6, 7, 8, 9, 10 }; 
var array3 = new[] { 3, 4, 5, 6, 7, 8, 9, 10, 11 }; 
var array4 = new[] { 4, 5, 6, 7, 8, 9, 10, 11, 12 }; 

var result = array1.Intersect(array2).Intersect(array3).Intersect(array4); 
Console.WriteLine(string.Join(", ", result)); 

を結果は次のようになります。4, 5, 6, 7, 8, 9

+0

私は3つの配列array1 = new [] {23、41、66、3、9}と言っています。 array2 = new [] {8,9,23}; array3 = new [] {9,40,12,18,77,30,23,85};私は、異なる配列の重複した数字のすべてを探したいでしょう。この例では、私は9と23を見つけるでしょう。これがよりうまくいくことを願っています。 –

関連する問題