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
相关推荐
马克Markorg5 小时前
使用rust实现的高性能api测试工具
开发语言·测试工具·rust·postman
中国胖子风清扬5 小时前
GPUI 在 macOS 上编译问题排查指南
spring boot·后端·macos·小程序·rust·uni-app·web app
键盘鼓手苏苏5 小时前
Flutter for OpenHarmony:injector 轻量级依赖注入库(比 GetIt 更简单的选择) 深度解析与鸿蒙适配指南
css·网络·flutter·华为·rust·harmonyos
BigNiu1 天前
rust遮蔽(shadow)示例代码
rust
程序员的那些事_1 天前
微软用 Rust 开发了一个库操作系统 LiteBox
开发语言·后端·rust
键盘鼓手苏苏1 天前
Flutter for OpenHarmony:cider 自动化版本管理与变更日志生成器(发布流程标准化的瑞士军刀) 深度解析与鸿蒙适配指南
运维·开发语言·flutter·华为·rust·自动化·harmonyos
IT 行者1 天前
ZeroClaw:Rust 驱动的下一代 AI Agent 基础设施
开发语言·人工智能·rust
IT 行者1 天前
AI Agent 平台横评:ZeroClaw vs OpenClaw vs Nanobot
开发语言·人工智能·rust
鸿乃江边鸟1 天前
Spark Datafusion Comet 向量化Rust Native--Native算子指标如何传递到Spark UI上展示
rust·spark·native
BigNiu1 天前
rust里mut 和遮蔽之间的区别
开发语言·rust