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]);

}

输出结果 :

相关推荐
tangliang_cn19 分钟前
java入门 自定义springboot starter
java·开发语言·spring boot
程序猿阿伟20 分钟前
《智能指针频繁创建销毁:程序性能的“隐形杀手”》
java·开发语言·前端
新知图书31 分钟前
Rust编程与项目实战-模块std::thread(之一)
开发语言·后端·rust
威威猫的栗子33 分钟前
Python Turtle召唤童年:喜羊羊与灰太狼之懒羊羊绘画
开发语言·python
力透键背33 分钟前
display: none和visibility: hidden的区别
开发语言·前端·javascript
bluefox197934 分钟前
使用 Oracle.DataAccess.Client 驱动 和 OleDB 调用Oracle 函数的区别
开发语言·c#
盛夏绽放1 小时前
Node.js 和 Socket.IO 实现实时通信
前端·后端·websocket·node.js
ö Constancy1 小时前
c++ 笔记
开发语言·c++
Ares-Wang1 小时前
Asp.net Core Hosted Service(托管服务) Timer (定时任务)
后端·asp.net
墨染风华不染尘1 小时前
python之开发笔记
开发语言·笔记·python