Main Content

MATLAB 基础类

您可以在 MATLAB® 中使用许多不同的数据类型或。您可以构建浮点和整数数据、字符和字符串以及逻辑 truefalse 值等构成的矩阵与数组。函数句柄可将您的代码与任何 MATLAB 函数连接在一起,而与当前范围无关。表、时间表、结构体和元胞数组提供了一种将不同类型的数据存储在同一容器中的方法。

MATLAB 中有 17 个基础类。其中每个类都采用矩阵或数组的形式存在。除了函数句柄之外,矩阵或数组的最小大小为 0×0,并且可以扩展到任意大小的 n 维数组。函数句柄始终为标量 (1x1)。

下图显示了所有的 MATLAB 基础类。

The fundamental MATLAB classes are the logical, string, char, table, cell, struct, and function handle classes, as well as the numeric classes of single, double, int8, int16, int32, int64, uint8, uint16, uint32, and uint64.

MATLAB 软件中的数值类包括有符号和无符号整数、单精度和双精度浮点数。默认情况下,MATLAB 以双精度浮点形式存储所有数值。(您不能更改默认类型和精度。)您可以选择以整数或单精度形式存储任何数值或数值数组。与双精度相比,以整数数组和单精度数组存储数据更节省内存。

所有数值类型都支持基本的数组运算,例如添加下标、重构和数学运算。

您可以使用以下两种存储格式之一创建二维的 doublelogical 矩阵:fullsparse。对于元素大部分是零值的矩阵,即稀疏矩阵,需要的存储空间是与之相同大小的满矩阵的一部分。稀疏矩阵会调用专为求解稀疏问题而设计的方法。

这些类需要不同的存储量,最小的类为 logical 值或 8 位整数,仅需要 1 个字节。如果您正在处理用小于 8 位的精度写入的文件中的数据,请务必记住这一最小大小。

下表详细地介绍了这些基础类。

类名

文档

预期用途

double, single浮点数
int8, uint8, int16, uint16, int32, uint32, int64, uint64整数
char, string字符和字符串
  • 文本的数据类型。

  • 本机或 Unicode®

  • 转换为数值/从数值进行转换。

  • 正则表达式一起使用。

  • 对于多个字符数组,使用元胞数组。

  • 您还可以将文本存储在字符串数组中。有关详细信息,请参阅 string

logical逻辑(布尔)运算
  • 用于关系条件或用于测试状态。

  • 可以具有以下两个值之一:truefalse

  • 也用于数组索引。

  • 二维数组可以为稀疏数组。

function_handle函数句柄
  • 函数的指针。

  • 支持将一个函数传递给另一个函数

  • 也可以在通常的范围之外调用函数。

  • 用于指定图形回调函数。

  • 保存到 MAT 文件并在以后恢复。

table, timetable, 时间表
  • 表是混合型列向数据的矩形容器。

  • 表用行名称和变量名称标识内容。

  • 时间表还为表中的数据提供存储,表中的行具有时间标签。时间表函数可以同步、重采样或聚合带时间戳的数据。

  • 使用表或时间表的属性来存储变量单位之类的元数据。

  • 元素处理与数值或逻辑数组类似。

  • 通过数值或命名索引访问数据。

  • 可以选择数据子集并保留表格容器,也可以从表格中提取数据。

struct结构体
  • 用字段存储不同类、不同大小的数组。

  • 通过单一操作访问一个或所有字段/索引。

  • 用字段名称标识内容。

  • 传递函数参数的方法。

  • 用于逗号分隔的列表

  • 开销需要较多内存

cell元胞数组
  • 用元胞存储不同类、不同大小的数组。

  • 可以根据需要自由打包数据。

  • 元素处理与数值或逻辑数组类似。

  • 传递函数参数的方法。

  • 用于逗号分隔的列表。

  • 开销需要较多内存

相关主题

外部网站