how-to-do-bitwise-operations-in-dart について
Dart 開発者向けに、int と bool のビット演算を紹介するガイドです。AND、OR、XOR と、それぞれの否定形をコード例で説明します。
主な機能
- 01int のビット演算を解説
- 02bool のビット演算を解説
- 03AND、OR、XOR を掲載
- 04NAND、NOR、XNOR を解説
- 05Dart のコード例を提示
活用シーン
- 01Dart のビット演算子の動作確認
- 02整数と真偽値の演算結果の比較
- 03論理演算の否定形の学習
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ rodydavis/ skills --skill how-to-do-bitwise-operations-in-dartインストール後、Claude Code で/how-to-do-bitwise-operations-in-dartを入力して読み込まれたか確認します。
詳細
Dart でビット演算を行う方法
Dart では、int 型と bool 型でビット演算を行うことができます。
AND
左辺と右辺の両方が true かどうかを確認します。詳しくはこちら。
// int
print(0 & 1); // 0
print(1 & 0); // 0
print(1 & 1); // 1
print(0 & 0); // 0
// bool
print(false & true); // false
print(true & false); // false
print(true & true); // true
print(false & false); // false
OR
包含的 OR
左辺または右辺のいずれかが true かどうかを確認します。詳しくはこちら。
// int
print(0 | 1); // 1
print(1 | 0); // 1
print(1 | 1); // 1
print(0 | 0); // 0
// bool
print(false | true); // true
print(true | false); // true
print(true | true); // true
print(false | false); // false
排他的 OR
左辺または右辺のどちらか一方だけが true かどうかを確認します。詳しくはこちら。
// int
print(0 ^ 1); // 1
print(1 ^ 0); // 1
print(1 ^ 1); // 0
print(0 ^ 0); // 0
// bool
print(false ^ true); // true
print(true ^ false); // true
print(true ^ true); // false
print(false ^ false); // false
NAND
AND 演算の否定です。
// int
print(~(0 & 1) & 1); // 1
print(~(1 & 0) & 1); // 1
print(~(1 & 1) & 1); // 0
print(~(0 & 0) & 1); // 1
// bool
print(!(false & true)); // true
print(!(true & false)); // true
print(!(true & true)); // false
print(!(false & false)); // true
NOR
包含的 OR 演算の否定です。
// int
print(~(0 | 1) & 1); // 0
print(~(1 | 0) & 1); // 0
print(~(1 | 1) & 1); // 0
print(~(0 | 0) & 1); // 1
// bool
print(!(false | true)); // false
print(!(true | false)); // false
print(!(true | true)); // false
print(!(false | false)); // true
XNOR
排他的 OR 演算の否定です。
// int
print(~(0 ^ 1) & 1); // 0
print(~(1 ^ 0) & 1); // 0
print(~(1 ^ 1) & 1); // 1
print(~(0 ^ 0) & 1); // 1
// bool
print(!(false ^ true)); // false
print(!(true ^ false)); // false
print(!(true ^ true)); // true
print(!(false ^ false)); // true
コメント
Markdown 対応