iT邦幫忙

2022 iThome 鐵人賽

DAY 4
1
Modern Web

30天學習Tauri系列 第 4

4.Rust-lang (一)

  • 分享至 

  • xImage
  •  

這幾天開始簡單的介紹並學習一下Rust lang的一些基本方法

  1. Data Type
  2. 變量常量
  3. 操作

1.Data Types

Scalar Types
Rust 有四種主要純量型別:整數、布林、浮點數以及字元

  • Iinteger: 沒有小數點的數字,(u32,此型別表示其擁有的數值應該是一個佔 32 位元大小的非帶號整數)
fn main() {
		let num: i32 = 123; // int type
		let num2: u32 = 456; // uint type
}
  • bool
let b: bool = true;
  • float: 針對有小數點的浮點數提供兩種基本型別:f32f64,分別佔有 32 位元與 64 位元的大小。而預設型別為f64,並且所有的浮點數型別都是帶號的(signed)
let x = 1.0; // f64
let fnum: f32 = 1.23; // f32
  • character
let c = 'z';
let z: char = 'ℤ'; // with explicit type annotation
let heart_eyed_cat = '?';
  • string
let message: &str = "Message";

Compound Types

  • tuple: 元組是個將許多不同型別的數值合成一個複合型別的常見方法。元組擁有固定長度:一旦宣告好後,它們就無法增長或縮減。
fn main() {
    let tup = (1, 3.14, 2); // assign value to tup

    let (x, y, z) = tup;

    println!("y num:{}", y);
}

使用(.)來獲取tuple裡的element

fn main() {
    let tup: (i32, f64, u8) = (1, 3.14, 2);

    let first = tup.0;

    let sec = tup.1;

    let third = tup.2;
}

  • array: 陣列中的每個型別必須是一樣的。Rust 的陣列是固定長度的。
let b: [i32; 5] = [1, 2, 3, 4, 5];

let a = [1, 2, 3, 4, 5];

let first = a[0];
let second = a[1];

2.變數常數

在rust中,變數預設是不可變的。據Rust所說,充分提供安全性和簡易並行性來撰寫程式的方法。

fn main() {
    let x = 1; // immutable variable
    println!("x num:{}", x);
    x = 2;
    println!("x num:{}", x);
}

如果再不可變變數中,將值給改變,編譯器會噴錯誤
https://ithelp.ithome.com.tw/upload/images/20220919/20108931nfan2eQcs7.png

我將變數轉為可變變數,我們加上關鍵字mut,讓他變成可變變數

fn main() {
    let mut x = 1; // mutable variable
    println!("x num:{}", x);
    x = 2;
    println!("x num:{}", x);
}

https://ithelp.ithome.com.tw/upload/images/20220919/20108931j5G5QYkRYI.png

常數變數constant

和不可變變數一樣,常數會讓數值與名稱綁定且不允許被改變,但是常數無法使用 mut,常數為永遠都不可變。並且如果你使用 const宣告而非 et的話,你必須指明data型別。
const NUM: u32 = 10;

今天簡易的介紹了rust型別,明後天繼續講解rust操作


上一篇
3.Hello, Tauri
下一篇
5.Rust-lang (二)
系列文
30天學習Tauri30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言