我的rust学习笔记(1)正在更新

Rust 学习笔记

注意!

本笔记从 结构体类型 开始。

结构体

类似于类,可以创独立的对象并修改其中的内容(前提:新对象用mut修饰)

创建不可修改的结构体类型(含初始化)

下面创建的结构体类型中,包含的字段(字段名: 字段名):

  • number: i32
  • name: String
  • lv:i32
struct Class {
    number: i32,
    name: String,
    lv: i32
}

fn main(){
    let my_class =Class{
        name: String::from("火箭".to_string()),
        number: i32::from(10000),
        lv: i32::from(10)
    };
    println!("name:{};number:{};lv:{}",my_class.name,my_class.number,my_class.lv);
}

创建可修改的结构体类型(含初始化)

下面创建的结构体类型中,包含的字段(字段名: 字段名):

  • number: i32
  • name: String
  • lv:i32
struct Class {
    number: i32,
    name: String,
    lv: i32
}

fn main(){
    let mut my_class =Class{
        name: String::from("火箭".to_string()),
        number: i32::from(10000),
        lv: i32::from(10)
    };
    my_class.lv += 10;
    println!("name:{};number:{};lv:{}",my_class.name,my_class.number,my_class.lv);
}

枚举类型

是一个自定义数据类型,通过enum <枚举类型名>的格式创建

#[derive(Debug)]
enum PePo{
    Man,
    Women
}

fn main(){
    let a: PePo = PePo::Man;
    let b: PePo = PePo::Women;
    println!("{:?};{:?}",a,b);
}

集合类型

Vec

这是长度可以自由变化的集合,创建方式有下面几种:

知道初始内容
fn main(){
    let mut v = vec![1,2,3];
    println!("{:?}",v);
}
不确定初始内容
fn main(){
    let mut arr:Vec<i32> = Vec::new();
}

注意:

一般在声明Vec集合的时候要加mut,以为
Vec集合是可变的。

Vec的数据操作
添加

使用push可以在集合末尾添加内容,示例:

fn main(){
	let mut arr = Vec::new();    //创建Vec集合
	arr.push(1)					 //在集合末尾添加数据
}

你可能感兴趣的:(rust,学习,笔记)