许可优化
许可优化
产品
产品
解决方案
解决方案
服务支持
服务支持
关于
关于
软件库
当前位置:服务支持 >  软件文章 >  结构数组连接嵌套引用变量值访问字段值Matlab初学扫盲32

结构数组连接嵌套引用变量值访问字段值Matlab初学扫盲32

阅读数 1
点赞 0
article_banner


1.结构数组的连接

结构数组必须具有相同的字段名才能连接,元素数目可以不同,某一元素添加字段,其他所有元素也具有了该字段,默认值为[],程序示例如下:

代码块

JavaScript


     自动换行
   


     复制代码
   

12345678910111213141516171819202122232425


%创建3个结构数组student/stu/st

student.xingming='zhangsan';

student.xuehao='00001';

student.chengji=[1 2 3;4 5 6];

stu=struct('xingming','zhangsan','xuehao','00001','chengji',[1 2 3;4 5 6]);

student(2).xingming='lisi';

student(2).xuehao='00002';

student(2).chengji=[7 8 9;1 2 3]

stu(2)=struct('xingming','zhangsan','xuehao','00001','chengji',[1 2 3;4 5 6])

st(100,100)=struct('a',[])

%% 结构数组的连接

[student,stu]  %同为1*2结构数组,并且字段名相同,结果为1*4结构数组

% [student,st]  %维度不同且字段名不同,报错

      复制成功
     
     
     
     

2.结构数组的嵌套

程序示例如下:

代码块

JavaScript


     自动换行
   


     复制代码
   

12345678910111213


student(1).stu=stu  %嵌套,理解:创建字段名stu,并把原结构数组stu作为字段值赋值给该字段名。给结构数组student的第1个元素student(1)添加stu字段,其他所有元素(如student(2))也会具有该字段

student(1).stu  %索引,查看第1个元素的stu字段名里的字段值(字段内容),结果为原stu数组

student(2).stu  %索引,结果是空矩阵,因为未指定该字段的值

%多级索引打开内部嵌套的字段值(理解:结构数组的索引,用圆点运算符(.)层层打开字段值,访问所需内容)

student(1).stu(1)  % student第一个元素的stu字段的第一个元素的值

student(1).stu(1).chengji  %进一步获取该元素的chengji字段的值

student(1).stu(1).chengji(1:3)  %进一步获取成绩值的第1-3元素

      复制成功
     
     
     
     

3.预留字段(添加新字段)

程序示例如下:

代码块

JavaScript


     自动换行
   


     复制代码
   

1234567


yuliuziduan='nianling'  %通过预留变量名的形式,给元素添加字段,字段名的赋值需字符型。

stu(1).(yuliuziduan)='nan'  %给包含多个元素的结构数组通过小括号+预留变量名的方式添加字段时,要指定具体元素,等号右侧赋字段值

%用途:当后面需要修改字段名时,不需再每处修改,而只修改预留变量所赋的值即可,树状图思想,预留变量作为中间值

stu(1).(yuliuziduan)  %小括号引用该预留变量代表的字段名,并索引该字段名的字段值,即nan

      复制成功
     
     
     
     

4.获取结构数组字段值

程序示例如下:

代码块

JavaScript


     自动换行
   


     复制代码
   

1234567


student.chengji  %索引student所有元素的chengji字段的值

v=student.chengji  %当只有一个输出参数v时,只返回第1个值

[v1,v2]=student.chengji  %若返回所有字段值,则指定相同个数的输出参数

v=[student(1).chengji,student(2).chengji]  %将多字段值存储在同一矩阵中,则先将字段值提取再矩阵连接。要求字段值数据类型相同,横纵连接符合矩阵连接的维度要求

      复制成功
     
     
     
     



免责声明:本文系网络转载或改编,未找到原创作者,版权归原作者所有。如涉及版权,请联系删

相关文章
技术文档
QR Code
微信扫一扫,欢迎咨询~
customer

online

联系我们
武汉格发信息技术有限公司
湖北省武汉市经开区科技园西路6号103孵化器
电话:155-2731-8020 座机:027-59821821
邮件:tanzw@gofarlic.com
Copyright © 2023 Gofarsoft Co.,Ltd. 保留所有权利
遇到许可问题?该如何解决!?
评估许可证实际采购量? 
不清楚软件许可证使用数据? 
收到软件厂商律师函!?  
想要少购买点许可证,节省费用? 
收到软件厂商侵权通告!?  
有正版license,但许可证不够用,需要新购? 
联系方式 board-phone 155-2731-8020
close1
预留信息,一起解决您的问题
* 姓名:
* 手机:

* 公司名称:

姓名不为空

姓名不为空

姓名不为空
手机不正确

手机不正确

手机不正确
公司不为空

公司不为空

公司不为空