RUST语言基本数据类型认识

1.RUST的基本数据类型参考:

2.使用RUST数据类型声明变量并赋值:

rust 复制代码
    let a:i8=1;//8位有符号整数
    let a1:u8=2;//8位无符号整数

    let b:i16=1;//16位有符号整数
    let b1:u16=2;//16位无符号整数

    let c:i32=1;//32位有符号整数
    let c1:u32=2;//32位无符号整数

    let d:i64=1;//64位有符号整数
    let d1:u64=2;//64位无符号整数

    let e:i128=1;//128位有符号整数
    let e1:u128=2;//128位无符号整数

    //32位架构表示32位
    //64位架构表示64位
    let g:isize=1;//32/64位有符号整数
    let g1:usize=2;//32/64位无符号整数

3.格式化输出变量赋值:

通过printlf! 与 {} 点位行号 进行格式化输出

rust 复制代码
    //32位架构表示32位
    //64位架构表示64位
    let g:isize=1;//32/64位有符号整数
    let g1:usize=2;//32/64位无符号整数

    println!("isize:g->{},usize:g1->{}",g,g1);//默认isize与usize类型,

4.RUST中进制表示:

rust 复制代码
    //RUST中进制表示,变量名建议小写,单词间用_来隔开
    let _decimal =98_222;//十进制  0~9
    let _hex	=0xff;//十六进制 0~f
    let _octal	=0o77;//八进制 0~7
    let _binary =	0b1111_0000;//二进制 0~1
    let _my_byte:u8 =b'A';//字节 0~255
    println!("{},{},{},{},{}",_decimal,_hex,_octal,_binary,_my_byte);

5.浮点数声明及使用

rust 复制代码
    //浮点数
    let h = 6.80;//默认为64位浮点数
    let h1:f32 = 3.14;//赋值时指定浮点类型为32位浮点数
    println!("h:f64->{},h1:f32->{}",h,h1);

7.布尔类型

rust 复制代码
     //布尔类型
    let is_ok=false;
    let is_ok:bool = true;
    if is_ok {
        println!("{}",is_ok);
    }

8.字符

rust 复制代码
//字符类型
    let cc = 'K';
    let dd:char = 'O';

9.元组使用

rust 复制代码
//元组使用
    //指定数据类型
    let tup:(i8,i16,i32)=(1,2,3);
    println!("元组中元素1:{},元组中元素2:{},元组中元素3:{}",tup.0,tup.1,tup.2);
    //自动推导数据类型
    let tup1=(888,3.12159,cc);
    //取元组中返回值
    let (r,r1,r2)=tup1;//接收元组返回值给指定命名临时变量
    println!("r:{},r1:{},r2:{}",r,r1,r2);

10.数组使用

rust 复制代码
//数组使用
    let arr=[1,3,5,7,9];//类型自动推导为i32:5  类型为i32 长度为5
    let arr1:[u8;3]=[255,18,90];//u8最大值为255,最小值为0  注意数据类型取值范围
    let arr2:[u32;4]=[555,65536,129,u32::max(0, 0)];//u32最小值为0,不能赋值负数
    //如果要使用负数,使用i开始的数据类型如i8,i16,i32
    let arr3:[i8;3]=[-128,127,99];//i8取值范围为-128~+127

    //字符串数组使用
    let arr_strings = ["Hello","World"];

    //指定默认元素及数组创建数组
    let arr_def_int = [8;8];
    //遍历数组
    for v in arr_def_int {
        println!("{}",v);
    }

    //数组下标使用
    println!("{},{}",arr_strings[0],arr_strings[1]);

完整示例代码:

rust 复制代码
fn main() {
    println!("RUST语言基本数据类型认识");
    let a:i8=1;//8位有符号整数
    let a1:u8=2;//8位无符号整数

    let b:i16=1;//16位有符号整数
    let b1:u16=2;//16位无符号整数

    let c:i32=1;//32位有符号整数
    let c1:u32=2;//32位无符号整数

    let d:i64=1;//64位有符号整数
    let d1:u64=2;//64位无符号整数

    let e:i128=1;//128位有符号整数
    let e1:u128=2;//128位无符号整数

    //32位架构表示32位
    //64位架构表示64位
    let g:isize=1;//32/64位有符号整数
    let g1:usize=2;//32/64位无符号整数

    println!("isize:g->{},usize:g1->{}",g,g1);//默认isize与usize类型,

    //RUST中进制表示,变量名建议小写,单词间用_来隔开
    let _decimal =98_222;//十进制  0~9
    let _hex	=0xff;//十六进制 0~f
    let _octal	=0o77;//八进制 0~7
    let _binary =	0b1111_0000;//二进制 0~1
    let _my_byte:u8 =b'A';//字节 0~255
    println!("{},{},{},{},{}",_decimal,_hex,_octal,_binary,_my_byte);

    //浮点数
    let h = 6.80;//默认为64位浮点数
    let h1:f32 = 3.14;//赋值时指定浮点类型为32位浮点数
    println!("h:f64->{},h1:f32->{}",h,h1);

    //布尔类型
    let is_ok=false;
    let is_ok:bool = true;
    if is_ok {
        println!("{}",is_ok);
    }

    //字符类型
    let cc = 'K';
    let dd:char = 'O';

    //元组使用
    //指定数据类型
    let tup:(i8,i16,i32)=(1,2,3);
    println!("元组中元素1:{},元组中元素2:{},元组中元素3:{}",tup.0,tup.1,tup.2);
    //自动推导数据类型
    let tup1=(888,3.12159,cc);
    //取元组中返回值
    let (r,r1,r2)=tup1;//接收元组返回值给指定命名临时变量
    println!("r:{},r1:{},r2:{}",r,r1,r2);

    //数组使用
    let arr=[1,3,5,7,9];//类型自动推导为i32:5  类型为i32 长度为5
    let arr1:[u8;3]=[255,18,90];//u8最大值为255,最小值为0  注意数据类型取值范围
    let arr2:[u32;4]=[555,65536,129,u32::max(0, 0)];//u32最小值为0,不能赋值负数
    //如果要使用负数,使用i开始的数据类型如i8,i16,i32
    let arr3:[i8;3]=[-128,127,99];//i8取值范围为-128~+127

    //字符串数组使用
    let arr_strings = ["Hello","World"];

    //指定默认元素及数组创建数组
    let arr_def_int = [8;8];
    //遍历数组
    for v in arr_def_int {
        println!("{}",v);
    }

    //数组下标使用
    println!("{},{}",arr_strings[0],arr_strings[1]);

}

输出结果 :

相关推荐
微小冷9 小时前
Rust异步编程详解
开发语言·rust·async·await·异步编程·tokio
鸿乃江边鸟9 小时前
Spark Datafusion Comet 向量化Rust Native--CometShuffleExchangeExec怎么控制读写
大数据·rust·spark·native
A9better9 小时前
C++——不一样的I/O工具与名称空间
开发语言·c++·学习
清水白石0089 小时前
《为什么说 deque 是 Python 滑动窗口的“隐藏神器”?深入解析双端队列的高效之道》
开发语言·python
杜子不疼.9 小时前
Ascend_C自定义算子开发
c语言·开发语言
lekami_兰9 小时前
RabbitMQ 延迟队列实现指南:两种方案手把手教你搞定
后端·rabbitmq·延迟队列
WooaiJava10 小时前
流式TTS音频播放项目 - 面试问答(后端)
java·开发语言
程序员泠零澪回家种桔子10 小时前
Sentinel核心能力解析:限流与集群方案
后端·架构·sentinel
新缸中之脑10 小时前
开发AI代理必备的8个Python 库
开发语言·人工智能·python
信码由缰10 小时前
Spring Boot 面试问题
spring boot·后端·面试