rust 基本数据类型

Rust 是 静态类型(statically typed)语言,也就是说在编译时就必须知道所有变量的类型,基本类型如下

整型

复制代码
整数 是一个没有小数部分的数字
长度 有符号 无符号
8-bit i8 u8
16-bit i16 u16
32-bit i32 u32
64-bit i64 u64
128-bit i128 u128
arch isize usize

浮点型

两个原生的 浮点数(floating-point numbers)类型,它们是带小数点的数字。 所有浮点数均为有符号数

Rust 的浮点数类型是 f32 和 f64,分别占 32 位和 64 位。默认类型是 f64

rust 复制代码
	let x = 2.0; // f64

    let y: f32 = 3.0; // f32

布尔型

复制代码
Rust 中的布尔类型有两个可能的值:true 和 false。Rust 中的布尔类型使用 bool 表示
rust 复制代码
    let t = true;

    let f: bool = false;

字符类型

复制代码
char 类型是语言中最原生的字母类型,用单引号声明 char 字面量,而与之相反的是,使用双引号声明字符串字面量
rust 复制代码
	let c = 'z';
    let z: char = 'ℤ';

元组类型

元组是一个将多个其他类型的值组合进一个复合类型的主要方式。

  • 元组长度固定:一旦声明,其长度不会增大或缩小。
  • 使用包含在圆括号中的逗号分隔的值列表来创建一个元组。
  • 元组中的每一个位置都有一个类型,而且这些不同值的类型也不必是相同的。
  • 不带任何值的元组有个特殊的名称,叫做 单元(unit) 元组
rust 复制代码
	let tup: (i32, f64, u8) = (500, 6.4, 1);

    let tup = (500, 6.4, 1);
    let (x, y, z) = tup;

可以使用点号(.)后跟值的索引来直接访问它们

rust 复制代码
	let x: (i32, f64, u8) = (500, 6.4, 1);

    let five_hundred = x.0;

    let six_point_four = x.1;

    let one = x.2;

数组类型

一个包含多个值的方式是 数组(array)。

  • 数组中的每个元素的类型必须相同
  • Rust 中的数组长度是固定的
  • 数组的值写成在方括号内,用逗号分隔
  • 数组是可以在栈 (stack) 上分配的已知固定大小的单个内存块
rust 复制代码
	let a = [1, 2, 3, 4, 5];

	let a: [i32; 5] = [1, 2, 3, 4, 5];	// i32 是每个元素的类型。分号之后,数字 5 表明该数组包含五个元素

	let a = [3; 5];	//变量名为 a 的数组将包含 5 个元素,这些元素的值最初都将被设置为 3。这种写法与 let a = [3, 3, 3, 3, 3];
相关推荐
doiito1 天前
【Agent Harness】Gliding Horse 本体论系统设计:给 AI Agent 装上“语义大脑”
ai·rust·架构设计·系统设计·ai agent
大卫小东(Sheldon)2 天前
Rust 推荐使用宏而非普通函数的场景
rust
doiito2 天前
【Agent Harness】为什么我把 JSON‑LD “编译成 DAG” 后,整个 Agent 平台立刻聪明了
ai·rust·架构设计·系统设计·ai agent
jump_jump3 天前
为了重玩金庸群侠传,我研究了一下 Ruffle 怎么复活 Flash
游戏·rust·github
星栈4 天前
Dioxus 多页面怎么做:`dioxus-router`、嵌套路由、`Outlet` 和页面组织,一篇给你讲顺
前端·rust·前端框架
Rust研习社5 天前
组合真的优于继承吗?为什么 Rust 和 Go 都拥抱组合舍弃继承?
后端·rust·编程语言
红尘散仙6 天前
想写一个像样的终端 App?试试把 React 的开发体验搬进 Rust TUI
前端·rust
vivo互联网技术6 天前
从 Web 到桌面:基于 Tauri 2.0 + Vue 3 打造 vivo 线下门店「大头贴」拍照体验系统
前端·rust
Rust研习社6 天前
这 8 个 Rust 学习资源值得每个新手收藏起来
后端·rust·编程语言
星栈7 天前
10 分钟跑起第一个 Dioxus 应用:`dx` CLI、`rsx!` 和热更新好不好用
前端·rust·前端框架