元胞数组的用法

元胞数组是MATLAB 的一种特殊数据类型,可以将元胞数组看作一种无所不包的通用矩阵,或者叫作广义矩阵。组成元胞数组的元素可以是任何一种数据类型的常数或者常量,每一个元素也可以具有不同的尺寸和内存占用空间,每一个元素的内容也可以完全不同,所以元胞数组的元素叫作元胞(cell)。

例:

>> a={'matlab',20;ones(2,3),1:10}
a = 
     'matlab'        [         20]
    [2x3 double]    [1x10 double]


元胞数组的创建使用“{ }”。创建数组a的时候,使用花括号将不同类型和尺寸的数据组合在一起构成了一个元胞数组,在这个数组中有标量、多维数组、向量和字符串。

>> b=[{'matlab'},{20};{ones(2,3)},{1:10}]
b = 
     'matlab'        [         20]
    [2x3 double]    [1x10 double]

两种方法创建的数组是相同的。

还可以用cell函数创建空元胞数组,该函数可以创建一维、二维或多维元胞数组,但是创建的数组都为空元胞。

>> a=cell(1)
a = 
    {[]}


>> b=cell(1,2)
b = 
   []    []

>> c=cell(3,3)
c = 
    []    []    []
    []    []    []
    []    []    []

cell函数创建空元胞数组的主要目的是为数组预先分配连续的存储空间,节约内存占用,提高执行效率。

获得元胞数组中的数据:

可通过用元胞数组名加大括号“{}”,大括号中的数值表示元胞的下标。如a{1,2}表示元胞数组中第一行第二列的元胞。

>> a={'matlab',20;ones(2,3),1:10}

a = 
     'matlab'        [         20]
    [2x3 double]    [1x10 double]

>> a{1,2}
ans =
    20
>> a(1,2)
ans = 
    [20]

注意:大括号用于表示元胞的内容,小括号表示指定的元胞。

要访问指定元胞中的具体元素,可以在元胞数组内容下标的后面加上指定数组元胞的下标。如:a{1,2}(1,2)表示元胞a{1,2}的元素(1,2)。

>>  a={20,'matlab';ones(2,3),1:10}
a = 
    [        20]    'matlab'     
    [2x3 double]    [1x10 double]
>> a{1,2}(2)    %'matlab'的第2个元素
ans =
  a
>> a{2,2}(2)
ans =
         2

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值