見出し画像

数値型と論理型

数値型

fn main() {
    // 数値型
    let a: i32 = 1;
    let b: f64 = 1.1;

    println!("i32: {}", a);
    println!("f64: {}", b);
}
$ cargo run

i32: 1
f64: 1.1

演算

fn main() {
    // 演算
    let a = 1 + 2;  // 加算
    let b = 3 - 4;  // 減算
    let c = 5 * 6;  // 乗算
    let d = 7 / 8;  // 除算
    let e = 9 % 10; // 剰余

    println!("1 + 2 = {}", a);
    println!("3 - 4 = {}", b);
    println!("5 * 6 = {}", c);
    println!("7 / 8 = {}", d);
    println!("9 % 10 = {}", e);
}
$ cargo run

1 + 2 = 3
3 - 4 = -1
5 * 6 = 30
7 / 8 = 0
9 % 10 = 9

型変換

fn main() {
    // 異なる型の演算はできない
    // let a = 1 + 1.0;

    // 異なる型の演算をやる場合は、CASTする必要がある。
    let a = 1 as f64 + 1.0;
    println!("a: {}", a);
}
$ cargo run

a: 2

※整数型から論理型への変換など、できないものもあるで注意。

論理型

fn main() {
    // 論理型
    let a: bool = true;
    let b: bool = false;

    println!("a: {}", a);
    println!("b: {}", b);
}
$ cargo run

a: true
b: false

比較演算

fn main() {

    // 比較演算子
    let c = 1 == 2; // 等価比較
    let d = 1 != 2; // 非等価比較
    let e = 1 < 2;  // 小なり比較
    let f = 1 > 2;  // 大なり比較
    let g = 1 <= 2; // 小なりイコール比較
    let h = 1 >= 2; // 大なりイコール比較

    println!("等価比較: {}", c);
    println!("非等価比較: {}", d);
    println!("小なり比較: {}", e);
    println!("大なり比較: {}", f);
    println!("小なりイコール比較: {}", g);
    println!("大なりイコール比較: {}", h);
}
$ cargo run

等価比較: false
非等価比較: true
小なり比較: true
大なり比較: false
小なりイコール比較: true
大なりイコール比較: false


この記事が気に入ったらサポートをしてみませんか?