C# jämföra multidimensionella arrays?

Permalänk
Medlem

C# jämföra multidimensionella arrays?

Finns det något smidigt sätt att jämföra multidimensionella arrays som inte kräver att man itererar genom hela listorna och jämför, eller åtminstone kanske en fördefinierad funktion i t.ex. LINQ.

Har 2st int[100,100] som jag måste säkerställa om de är lika eller ej.

Permalänk
Medlem

Array.Equals(array1, array2) kanske?

Edit: Ska man vara petig är inte[100][100] inte heller en flerdimensionell array, utan en s.k. "jagged" array.
En "riktig" multidimensionell array skulle vara int[100,100].

Permalänk
Hedersmedlem

a1.Cast<int>().SequenceEqual(a2.Cast<int>()) kanske?

Permalänk
Medlem
Skrivet av MrMadMan:

Array.Equals(array1, array2) kanske?

Edit: Ska man vara petig är inte[100][100] inte heller en flerdimensionell array, utan en s.k. "jagged" array.
En "riktig" multidimensionell array skulle vara int[100,100].

Array.Equals fungerar inte, då den jämför referensen inte själva objekten.

Skrivet av Elgot:

a1.Cast<int>().SequenceEqual(a2.Cast<int>()) kanske?

Detta får jag testa, återkommer.

Tills vidare har jag gjort en iterering, löste problemet men är inte snyggt

Permalänk
Medlem
Skrivet av Zelloxy:

Array.Equals fungerar inte, då den jämför referensen inte själva objekten.

Detta får jag testa, återkommer.

Tills vidare har jag gjort en iterering, löste problemet men är inte snyggt

Stack overflow har lite info om saken:
http://stackoverflow.com/questions/7934937/different-results-...

Visa signatur

ηλί, ηλί, λαμά σαβαχθανί!?