主要内容

所有

确定所有数组元素是否非零或真正的

描述

例子

B= (一个)的第一个数组维度进行测试一个其大小不等于1,并确定是否所有元素都是非零或逻辑1(真正的)。在实践中,所有是逻辑和运算符的自然扩展。

  • 如果一个是向量吗(一)返回逻辑1(真正的),如果所有的元素都是非零且返回逻辑0(如果一个或多个元素为零。

  • 如果一个是一个非空矩阵,那么(一)处理列一个作为向量并返回一个行向量的逻辑1年代和0年代。

  • 如果一个是一个空的0 × 0矩阵(一)返回逻辑1(真正的)。

  • 如果一个是多维数组,那么(一)沿着第一个数组维度(其大小不等于1)进行操作,并返回一个逻辑值数组。这个维度的大小变成1,而其他所有尺寸的尺寸保持不变。

B= (一个,“所有”)的所有元素进行测试一个。这个语法在MATLAB中是有效的®R2018b及更高版本。

例子

B= (一个,昏暗的)沿维度测试元素昏暗的。的昏暗的输入是一个正整数标量。

例子

B= (一个,vecdim)根据矢量中指定的尺寸测试元素vecdim。例如,如果一个是矩阵,那么所有([1 - 2])测试中的所有元素一个,因为矩阵的每个元素都包含在维度1和2定义的数组切片中。

例子

全部折叠

创建一个3 × 3矩阵,然后测试每一列中所有非零元素。

A = [0 0 3;0 0 3;0 0 3]
一个=3×30 0 3 0 0 3 0 0 3
B = ()
B =1 x3逻辑阵列0 0 1

创建一个十进制值向量,并测试哪些值小于0.5。

A = [0.53 0.67 0.01 0.38 0.07 0.42 0.69];B = (A < 0.5)
B =1 x7逻辑阵列0 0 1 1 1 1 1 0 0

输出是逻辑值的向量。的所有函数将这样一个逻辑值向量简化为单个条件。在这种情况下,B = all(A < 0.5)收益率的逻辑0

这使得所有特别有用的如果语句。

if all(A < 0.5)

%做某事

其他的

%做其他的事情

结束

代码的执行取决于单个条件,而不是可能冲突的条件的向量。

创建一个3乘7乘5的多维数组并测试它的所有元素是否都小于3。

A = rand(3,7,5) * 5;B = all(A(:) < 3)
B =逻辑0

还可以测试数组中大于零的元素。

B = all(A(:) > 0)
B =逻辑1

的语法(:)转变元素一个转换为单个列向量,因此可以对任意大小的数组使用这种类型的语句。

创建一个3 × 3矩阵。

A = [0 0 3;0 0 3;0 0 3]
一个=3×30 0 3 0 0 3 0 0 3

测试行一个为所有非零元素指定昏暗的= 2

B =所有(2)
B =3 x1逻辑阵列0 0 0

创建一个3d数组,并确定每个数据页(行和列)中的所有元素是否为零。

A(:,:,1) = [2 1;3 5];A(:,:,2) = [0 0;0 0];A(:,:,3) = [-2 9;4 1];B = all(A,[1 2])
B =1 x1x3逻辑阵列B(:,:,1) = 1 B(:,:,2) = 0 B(:,:,3) = 1

输入参数

全部折叠

输入数组,指定为标量、向量、矩阵或多维数组。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64|逻辑|字符
复数的支持:万博1manbetx是的

操作的维数,指定为正整数标量。如果未指定值,则默认为第一个数组维度,其大小不等于1。

考虑一个二维输入数组,一个:

  • 所有(1)的列中的连续元素一个并返回逻辑值的行向量。

  • 所有(2)的连续元素一个并返回逻辑值的列向量。

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

维数的向量,指定为正整数的向量。每个元素代表输入数组的一个维度。在指定的操作尺寸中输出的长度为1,而其他的保持不变。

考虑一个2乘3乘3的输入数组,一个。然后所有([1 - 2])返回一个1乘1乘3的数组,其元素为的每一页指示非零值一个

数据类型:||int8|int16|int32|int64|uint8|uint16|uint32|uint64

输出参数

全部折叠

逻辑数组,作为标量、向量、矩阵或多维数组返回。的维数一个行动的所有有大小1B

扩展功能

之前介绍过的R2006a