2010-06-18 4 views
2

Comment puis-je tester si deux collections sont égales selon que chaque paire d'éléments est égale selon .Equals()? Je me trouve en train d'écrire une petite fonction (donnée ci-dessous) qui me semble superflue. J'imagine qu'il doit y avoir une façon beaucoup plus simple de le faire.Comment tester l'égalité par paire de deux collections

bool ListsEqual<T>(IList<T> lhs, IList<T> rhs) where T : IEquatable<T> { 
    if (lhs == rhs) { 
     return true; 
    } 

    if (lhs.Count == rhs.Count) { 
     for (int i = 0; i < lhs.Count; i++) { 
      if (lhs[i].Equals(rhs[i]) == false) { 
       return false; 
      } 
     } 
     return true; 
    } else { 
     return false; 
    } 
} 

Répondre

Questions connexes