rust运算

不同类型不能放在一起运算。如果非要计算,必须先强转成一个类型再运算。

一 、数字运算

(一)算术运算

a = 10且b = 5

名称 运算符 范例
+ a+b的结果为15
- a-b的结果为5
* a*b的结果为50
/ a / b的结果为2
求余 % a % b的结果为0

Rust语言不支持自增自减运算符 ++ 和 --

整数类型的最小值

assert_eq!(i32::MIN, -2147483648);

整数类型的最大值

assert_eq!(i32::MAX, 2147483647);

整数类型的位数

assert_eq!(i32::BITS, 32);

(二)位运算

A = 2且变量B = 3。

A的二进制格式为

0 0 0 0 0 0 1 0

B的二进制位格式为

0 0 0 0 0 0 1 1

名字 运算符 说明 范例
位与 & 相同位都是1则返回1否则返回0 (A & B) 结果为 2
位或 | 相同位只要有一个是1则返回1否则返回0 (A | B) 结果为3
异或 ^ 相同位不相同则返回1否则返回0 (A ^ B) 结果为1
位非 ! 把位中的1换成0,0换成1 (!B) 结果 -4
左移 << 操作数中的所有位向左移动指定位数,右边的位补0 (A << 1) 结果为4
右移 >> 操作数中的所有位向右移动指定位数,左边的位补0 (A >> 1) 结果为1

(三)布尔运算

1.比较运算

A = 10且B = 20

名称 运算符 说明 范例
大于 > 如果左操作数大于右操作数则返回true否则返回false (A > B) 返回false
小于 < 如果左操作数小于于右操作数则返回true否则返回false (A < B) 返回true
大于等于 >= 如果左操作数大于或等于右操作数则返回true否则返回false (A >= B) 返回false
小于等于 <= 如果左操作数小于或等于右操作数则返回true否则返回false (A <= B) 返回true
等于 == 如果左操作数等于右操作数则返回true否则返回false (A == B) 返回true
不等于 != 如果左操作数不等于右操作数则返回true否则返回false (A != B) 返回false

2.逻辑运算

A = 10且B = 20

名称 运算符 说明 范例
逻辑与 && 两边的条件表达式都为真则返回true否则返回false (A > 10 && B > 10) 的结果为 false
逻辑或 || 两边的条件表达式只要有一个为真则返回true否则返回false (A > 10 || B >10) 的结果为 true
逻辑非 ! 如果表达式为真则返回false否则返回true !(A >10) 的结果为 true
相关推荐
John_Rey7 小时前
API 设计哲学:构建健壮、易用且符合惯用语的 Rust 库
网络·算法·rust
勤奋的小小尘7 小时前
第六篇: Rust 中的"静态方法"(关联函数)
rust
勤奋的小小尘7 小时前
第七篇: Rust 多线程与并发编程详解
rust
猛喝威士忌7 小时前
Tauri 和 enigo 你们不许再崩溃啦!
rust·客户端
q***31899 小时前
数据库操作与数据管理——Rust 与 SQLite 的集成
数据库·rust·sqlite
百锦再20 小时前
第11章 泛型、trait与生命周期
android·网络·人工智能·python·golang·rust·go
芳草萋萋鹦鹉洲哦20 小时前
【Windows】tauri+rust运行打包工具链安装
开发语言·windows·rust
s9123601011 天前
【Rust】m2 mac 编译linux 、aarch、win 程序
rust
Source.Liu1 天前
【ISO8601库】日期时间解析器测试套件详解(tests.rs)
rust·time·iso8601
alwaysrun1 天前
Rust中数组简介
rust·数组·array·切片