主要内容

isequal

确定数组相等性

描述

例子

Tf = isequal(A、B返回逻辑1真正的)如果一个而且B是等价的;否则,返回逻辑0).看到输入参数节给出每种数据类型的等价性定义。(不是数字)NaT(不是时间),未定义的分类元素,和< >失踪值被认为是不平等的对其他元素,以及自身。

治疗NaT<定义>,< >失踪值等于其他这样的值,使用isequaln

例子

Tf = isequal(A1, A2,…,一个返回逻辑1真正的)如果所有输入都相等。

例子

全部折叠

创建两个数字矩阵并比较它们是否相等。

A = 0 (3,3)+1e-20;B = 0 (3,3);tf = isequal(A,B)
tf =逻辑0

函数返回逻辑0),因为矩阵之间的差异非常小完全平等的。

创建两个结构,并以不同的顺序指定字段。

A = struct(“field1”, 0.005,“field2”, 2500);B = struct(“field2”, 2500,“field1”, 0.005);

比较结构是否相等。

tf = isequal(A,B)
tf =逻辑1

尽管每个结构中字段的顺序不同,isequal将它们视为相同的,因为它们的值是相等的。

比较逻辑值真正的二重整数1

isequal(真的,1)
ans =逻辑1

请注意,isequal在测试是否相等时不考虑数据类型。

同样的,比较“一个”到ascii等效整数,65

isequal (“一个”, 65)
ans =逻辑1

结果是合乎逻辑的1真正的)自双引号(' A ')=65

创建三个包含NaN值的向量。

A1 = [1 NaN NaN];A2 = [1 NaN NaN];A3 = [1 NaN NaN];

比较两个向量是否相等。

tf = isequal(A1,A2,A3)
tf =逻辑0

结果是合乎逻辑的0),因为isequal不将NaN值视为彼此相等。

确定2013年1月13日阿拉斯加州安克雷奇的午夜是否等于开罗同一日期的上午11点。

T1 = datetime(2013,1,13,0,0,0,“时区”“美国/安克雷奇”);T2 = datetime(2013,1,13,11,0,0,“时区”“非洲/开罗”);Tf = isequal(t1,t2)
tf =逻辑1

在日期后加上8个月,比较datetime值是否相等。

T1 = datetime(2013,9,13,0,0,0,“时区”“美国/安克雷奇”);T2 = datetime(2013,9,13,11,0,0,“时区”“非洲/开罗”);Tf = isequal(t1,t2)
tf =逻辑0

datetime值不再相等,因为开罗不遵守日光节约时间。

尽管大小和数据类型不同,isequal返回逻辑1真正的)当比较包含相同字符序列的字符向量和字符串标量时。

isequal (“foo”“foo”
ans =逻辑1

输入参数

全部折叠

要比较的输入,指定为数组。

在某些情况下,输入的类型不必匹配:

  • 如果数字输入大小相同且内容值相等,则它们是等效的。该测试分别比较数值数组的实部和虚部。

  • 只有当所有元素和属性都相等时,表格、时间表、结构和单元格数组才等效。

  • 字符串标量和包含相同字符序列的字符向量是等价的。

有些数据类型比较涉及元数据时需要特别考虑。如果输入是所有

  • 结构——只要内容相等,字段的顺序就不需要相同。

  • 序数分类数组——必须有相同的类别集,包括它们的顺序。

  • 非序数的分类数组——可以有不同的类别集和isequal比较每对元素的类别名称。

  • 日期时间数组-isequal在比较时间点时忽略显示格式。如果数组都与时区相关联,则isequal比较时间上的瞬间,而不是时钟面时间(例如,美国东部时间2018年5月1日09:00:00是同一瞬间吗2018年5月01日06:00:00 PDT,所以isequal返回真正的尽管9点和6点的时钟时间不同)。

  • 对象-isequal返回逻辑1真正的)对于具有相同属性值的同一类的对象。

要比较的输入序列,指定为数组。

在某些情况下,输入的类型不必匹配:

  • 如果数字输入大小相同且内容值相等,则它们是等效的。该测试分别比较数值数组的实部和虚部。

  • 只有当所有元素和属性都相等时,表格、时间表、结构和单元格数组才等效。

  • 字符串标量和包含相同字符序列的字符向量是等价的。

有些数据类型比较涉及元数据时需要特别考虑。如果输入是所有

  • 结构——只要内容相等,字段的顺序就不需要相同。

  • 序数分类数组——必须有相同的类别集,包括它们的顺序。

  • 非序数的分类数组——可以有不同的类别集和isequal比较每对元素的类别名称。

  • 日期时间数组-isequal在比较时间点时忽略显示格式。如果数组都与时区相关联,则isequal比较时间上的瞬间,而不是时钟面时间(例如,美国东部时间2018年5月1日09:00:00是同一瞬间吗2018年5月01日06:00:00 PDT,所以isequal返回真正的尽管9点和6点的时钟时间不同)。

  • 对象-isequal返回逻辑1真正的)对于具有相同属性值的同一类的对象。

提示

  • 两个函数句柄的相等性取决于它们的构造方式。有关更多信息,请参见比较函数句柄

  • isequal返回逻辑0)对于两个具有动态属性的对象,即使属性具有相同的名称和值。

  • isequal当测试两个对象是否相等时,只比较存储的(非依赖的)属性。

  • 当比较两个句柄对象时,使用= =测试对象是否具有相同的句柄。使用isequal确定具有不同句柄的两个对象是否具有相等的属性值。

  • 当比较空对象数组时,isequal返回逻辑1真正的)仅当数组具有相同的大小和类时。

扩展功能

C/ c++代码生成
使用MATLAB®Coder™生成C和c++代码。

GPU代码生成
使用GPU Coder™为NVIDIA®GPU生成CUDA®代码。

版本历史

R2006a之前介绍

全部展开