数值类型 numeric
默认为double类型 也可以使用类型转换将其转换为其他类型
n=3; class(n) %得到double类型 n=int8(30); class(n) %得到int8 类型
字符类型(char)
%% s1='h' %char类型 显示占2个字节 a=uint8(s1) %强制将s1的char类型转换为numric类型 显示占1个字节 显示104 ascii码表 whos %% s2='H' %同上 b=uint16(s2) % 同上但是占用2个字节 16位无符号整数 显示72 大写字母和小写字母 相差32 (10进制) whos
字符串类型 string
s1='Example'; s2='String'; whos s3=[s1 s2] % 显示 ExampleString 两个字符串串联在一起 s4=[s1;s2]; %加; 组成行列式 失败 两个字符串 的维度不同 前者7列 后者6列
s5=[s1;s1] %两个字符串长度要一致 显示 s5 = Example Example
拓展:
A1=['str1' 'str2']; A2=['str3' 'str4']; A3=['str5' 'str6']; C=vertcat(A1,A2,A3) 输出 C = str1str2 str3str4 str5str6
等价于C=[A1;A2;A3]
逻辑操作与赋值
str='aardvark'; 'a'==str %得到11000100 遍历str中的每个元素和a进行比较 如果%相同则返回1 不同返回0 str(str=='a')='Z' %先执行括号内语句 得到11000100 逻辑运算结果, %再将结果作为索引位置的开关 当该索引位置的值为1时替换为Z 如果为0 %则不替换 所以此时输出 ZZrdvZrk
字符串比较
strcmp 函数
s1='exmaple'; s2='string'; strcmp(s1,s2) %比较s1和s2 得到0 strcmp(s1,s1) %比较s1和s1 得到1
比较函数还有eq ne regexp regexpi sort strcmpi strfind strncmp strncmpi
练习:
s1='i like the letter E' s2=s1(length(s1):-1:1) %翻转字符串 s3=s1(size(s1,2):-1:1) %翻转字符串 s4=reverse(s1) %翻转字符串 输出 s4 = 'E rettel eht ekil i'
t="Hello, world"; whos t % 为何是160 q="Something ""quoted"" and something else." % 显示双引号 需要再用引号修饰 f=71; c=(f-32)/1.8; temptext="temperature is"+c+" °C" % 用+ 连接两个字符串 Name Size Bytes Class Attributes t 1x1 160 string q = "Something "quoted" and something else." temptext = "temperature is21.6667 °C"
%字符串数组
A=["a","bb","ccc";"dddd","eeeee","ffffff"] strlength(A) A = 2x3 string 数组 "a" "bb" "ccc" "dddd" "eeeee" "ffffff" ans = 1 2 3 4 5 6
结构体类型 structure
一种存储异构数据的方法 结构包含成为字段的数组
1.创建结构体
student.name='john doe'; student.id='[email protected]'; student.number=301073268; student.grade=[100,75,73;... 95,91,85.5;... 100,98,72]; student 输出为 student = 包含以下字段的 struct: name: 'john doe' id: '[email protected]' number: 301073268 grade: [3x3 double]
向结构中添加信息 例如加入另一名同学的记录
student(2).name='ann lane'; %默认结构体中第一个记录的索引为1 所以此处再添加索引为2 student(2).id='[email protected]'; student(2).number=301073269; student(2).grade=[95 100 90;... 95,82 97;... 100,85 100]; student %显示当前结构体中所有的记录 student(1).grade(2,3)=30; %修改行列式中某个位置的值 student %结果如下 第2行第3列的元素已经修改成功
显示结构体中的某个值
student(1).grade(7) %以列为索引方向 student(2).name
元胞数组 cell
高维元胞数组
判断变量数据类型的函数 内建
文件读写
读写matlab格式的数据
读写excel表格 数据
标签:grade,s2,s1,郭彦甫,数据类型,matlab,student,字符串,100 From: https://www.cnblogs.com/dongguolei/p/17573040.html