Rust 5日目 (プリミティブ型)
最も基本的な型のこと。
ブーリアン型
ブーリアン型bool
にはtrue
とfalse
がある。
fn main() { let x: bool = true; if x { println!("Hello!"); } } // Hello!
char型
fn main() { let c: char = 'あ'; println!("{}", c); } // あ
数値型
数値を表す。
型 | 意味 |
---|---|
i8 | 8ビットの符号付き整数型 |
i16 | 16ビットの符号付き整数型 |
i32 | 32ビットの符号付き整数型 |
i64 | 64ビットの符号付き整数型 |
u8 | 8ビットの符号なし整数型 |
u16 | 16ビットの符号なし整数型 |
u32 | 32ビットの符号なし整数型 |
u64 | 64ビットの符号なし整数型 |
isize | ポインタサイズを表す符号付き整数型 |
usize | ポインタサイズを表す符号なし整数型 |
f32 | 32ビット浮動小数点数型 |
f64 | 64ビット浮動小数点数型 |
配列
固定長で同じ型の要素を持つ。
fn main() { let a = [1, 2, 3]; let b: [i32; 3] = [1, 2, 3]; let mut c = [1, 2, 3]; c[0] = 0; a[0]; b[0]; }
スライス
fn main() { let a = [1, 2, 3, 4, 5]; &a[..]; // すべての要素をスライス &a[1..4]; // [2, 3, 4]; }
str型
文字列を表す。
タプル
タプルは異なる型を持つ。
fn main() { let a = (1, 2); println!("{} {}", a.0, a.1); } // 1 2
タプルのインデックス
タプルのインデックスはタプル.インデックスの番号
とする。
パターンによる変数宣言
変数の宣言を一度にできる。
fn main() { let (a, b) = (1, 2); println!("{} {}", a, b); }
fn main() { let (mut a, mut b) = (1, 2); a = 2; b = 3; println!("{} {}", a, b); }
関数
関数にも型がある。
fn hoge() -> i32{ 1 } fn main() { let h: fn() -> i32 = hoge; println!("{}", h()); }