リテラルと演算子

RustRustBeginner
オンラインで実践に進む

This tutorial is from open-source community. Access the source code

💡 このチュートリアルは英語版からAIによって翻訳されています。原文を確認するには、 ここをクリックしてください

はじめに

この実験では、Rust におけるリテラルと演算子の使い方を探ります。整数、浮動小数点数、文字、文字列、ブール値、およびユニット型などのリテラルは、それぞれのリテラル形式を使って表現できます。整数は、16 進数、8 進数、または 2 進数表記でも表現できます。アンダースコアを使って、数値リテラルの読みやすさを向上させることができます。Rust は、浮動小数点数リテラルに対して科学的な E 表記をサポートしています。加算、減算、論理演算、ビット演算、およびシフト演算などの演算子が Rust に用意されています。

注: 実験でファイル名が指定されていない場合、好きなファイル名を使うことができます。たとえば、main.rs を使って、rustc main.rs &&./main でコンパイルして実行することができます。

リテラルと演算子

整数 1、浮動小数点数 1.2、文字 'a'、文字列 "abc"、ブール値 true、およびユニット型 () は、リテラルを使って表現できます。

整数は、それぞれ 0x0o、または 0b の接頭辞を使って、16 進数、8 進数、または 2 進数表記で表現することもできます。

数値リテラルにアンダースコアを挿入して、読みやすさを向上させることができます。たとえば、1_0001000 と同じで、0.000_0010.000001 と同じです。

Rust はまた、科学的な E 表記もサポートしています。たとえば、1e67.6e-4 です。関連する型は f64 です。

使うリテラルの型をコンパイラに知らせる必要があります。今のところ、リテラルが符号なし 32 ビット整数であることを示すには u32 サフィックスを、符号付き 32 ビット整数であることを示すには i32 サフィックスを使います。

Rust における利用可能な演算子とその優先順位は、他の C 系言語と似ています。

fn main() {
    // 整数の加算
    println!("1 + 2 = {}", 1u32 + 2);

    // 整数の減算
    println!("1 - 2 = {}", 1i32 - 2);
    // TODO ^ `1i32` を `1u32` に変更して、型が重要な理由を確認してみてください

    // 科学表記
    println!("1e4 is {}, -2.5e-3 is {}", 1e4, -2.5e-3);

    // 短絡型のブール論理
    println!("true AND false is {}", true && false);
    println!("true OR false is {}", true || false);
    println!("NOT true is {}",!true);

    // ビット演算
    println!("0011 AND 0101 is {:04b}", 0b0011u32 & 0b0101);
    println!("0011 OR 0101 is {:04b}", 0b0011u32 | 0b0101);
    println!("0011 XOR 0101 is {:04b}", 0b0011u32 ^ 0b0101);
    println!("1 << 5 is {}", 1u32 << 5);
    println!("0x80 >> 2 is 0x{:x}", 0x80u32 >> 2);

    // 読みやすさを向上させるためにアンダースコアを使いましょう!
    println!("One million is written as {}", 1_000_000u32);
}

まとめ

おめでとうございます!あなたはリテラルと演算子の実験を完了しました。あなたの技術を向上させるために、LabEx でさらに多くの実験を練習することができます。