這裡要比較的是兩個數組中的內容是否相同,以int數組為例
int[] Arraya=new[] {1,2,3,4,5}
int[] Arrayb=new[] {5,3,2,1,4}
以上兩個數組內的值是相同的,都是1,2,3,4,5.具體的算法如下。
第一種就是最原始的方法,使用循環。
public static bool compareArr(int[] arr1,int[] arr2){
bool[] flag=new bool[arr1.Length];//初始化一個bool數組,初始值全為false;
for(int i=0;i<arr1.Length;i++){
for(int j=0;j<arr2.Length;j++){
if(arr1[i]==arr2[j]) flag[i]=true;//遇到有相同的值,對應的bool數組的值設為true;
}
}
foreach(var item in flag){
if(item==false) return false; //遍歷bool數組,還有false,就說明有不同的值,結果返回false。
}
return true;
}
第二種方法可以借助Linq查詢來比較。
{
}