数组比较的几种方式

简介: 1、string.Equals()```csharpstring[] strList1= new string[3] {"1", "2", "3"};string[] strList2= new string[3] {"4", "5", "6"}; if (!string.Equals(strList1, strList2)){ // 比较数组的不同之处}// 涉及到修改日志输出等数组可以直接json序列化然后用上述方法比较即可,如下if (!string.Equals(JsonConvert.SerializeObject(list1), JsonConvert

1、string.Equals()

string[] strList1= new string[3] {
   "1", "2", "3"};
string[] strList2= new string[3] {
   "4", "5", "6"};

if (!string.Equals(strList1, strList2))
{
   
    // 比较数组的不同之处
}

// 涉及到修改日志输出等数组可以直接json序列化然后用上述方法比较即可,如下
if (!string.Equals(JsonConvert.SerializeObject(list1), JsonConvert.SerializeObject(list2)))
{
   
    // 比较数组的不同之处
}

2、通过使用相同类型的默认相等比较器对序列元素进行比较,以确定两个序列是否相等。

// 输入代码内容
if (Enumerable.SequenceEqual(strList1,strList2))
{
   
     // 比较数组的不同之处
}

3、数组逐个值比较

public static bool CompareArray(string[] list1, string[] list2)
{
   
    var length1 = list1.Length;
    var length2 = list2.Length;
    if (length1 != length2)
        return false;
    for (var i = 0; i < length1; i++)
    {
   
        if (list1[i] != list2[i])
            return false;
    }
    return true;
}

// 应用
var isEqual = CompareArray(strList1, strList2);
Console.WriteLine("是否相等:" + isEqual);

4、数组的交集

//找出相同元素(即交集)
var sameArr = arr1.Intersect(arr2).ToArray();
//找出不同的元素(即交集的补集)
var diffArr = arr1.Where(c => !arr2.Contains(c)).ToArray();

if (diffArr.Count() == 0)
{
   
   // 相同
}
else
{
   
   // 不同
}

5、string.Compare()

6、StringComparer类

以上就是数组比较的几种方式的介绍,做此记录,如有帮助,欢迎点赞关注收藏!

目录
相关文章
|
6月前
|
存储 数据可视化 C语言
C 语言数组教程:定义、访问、修改、循环遍历及多维数组解析
数组用于将多个值存储在单个变量中,而不是为每个值声明单独的变量。 要创建数组,请定义数据类型(例如 int)并指定数组名称,后面跟着方括号 []。 要将值插入其中,请使用逗号分隔的列表,并在花括号内使用
1122 0
|
5月前
|
存储 Java 索引
JavaSE——数组(1/2)-数组的定义和访问(静态初始化数组、动态初始化数组、案例练习)
JavaSE——数组(1/2)-数组的定义和访问(静态初始化数组、动态初始化数组、案例练习)
38 7
|
6月前
|
存储 Java 索引
Java数组的地址值与元素访问技术
Java数组的地址值与元素访问技术
60 2
|
6月前
|
索引
数组的操作
`splice`方法改变原数组,如`arr.splice(a, b)`从下标`a`开始截取`b`个数。`push()`在数组尾部添加元素并返回新长度,`pop()`删除并返回尾部元素。`unshift()`在头部添加,`shift()`删除并返回头部元素。`findIndex()`返回满足条件的元素下标,否则-1。`forEach`遍历数组,`map`类似但返回新数组。
37 1
|
6月前
|
存储 JavaScript 前端开发
数组:数组是JS中的一种特殊对象,用于存储一组有序的数据。需要掌握数组的创建、访问、修改以及各种内置方法。
数组:数组是JS中的一种特殊对象,用于存储一组有序的数据。需要掌握数组的创建、访问、修改以及各种内置方法。
74 2
|
6月前
|
BI
多维数组元素的指针访问方式
以二维数组为例介绍多维数组的指针访问方式。
57 0
|
搜索推荐 编译器 C++
C++基础:第5~6章:数组\函数
C++基础:第5~6章:数组\函数
52 0
C#基础Ⅵ❷-数组
C#基础Ⅵ❷-数组
|
存储 索引 容器
数组的定义方式及访问
数组的定义方式及访问
111 0
|
存储 算法 索引
最基础的数组你真的掌握了吗?
首先要知道数组在内存中的存储方式,这样才能真正理解数组相关的题 数组是存放在连续内存空间上的相同类型数据的集合。 数组可以方便的通过下标索引的方式获取到下标下对应的数据。 举一个字符数组的例子,如图所示:
86 0