Dart 数値同士を比較する

Dartで、数値同士を比較するコードを記述してます。
環境
- OS windows11 home
- Dart 2.18.1
数値同士を比較
数値同士を比較するには、「 compareTo 」を使用します。
数値.compareTo(数値)
// 左の方が大きければ -1 右の方が大きければ 1 同じであれば 0 が返ります
実際に、使用してみます。
void main() {
print(1.compareTo(2)); // -1
print(2.compareTo(1)); // 1
print(1.compareTo(1)); // 0
print(0.compareTo(-0)); // 0
print(0.compareTo(0)); // 0
print((-0).compareTo(-0)); // 0
print((-0).compareTo(0)); // 0
}
実行結果を見ると、判定されていることが確認できます。

0や少数に使用
「0」に使用しても、少数に使用しても正しく判定されますが「0.0」と「-0.0」を比較すると「0.0」のほうが大きいと判定されます。
void main() {
print((1.1).compareTo(1.2)); // -1
print((1.2).compareTo(1.1)); // 1
print((1.1).compareTo(1.1)); // 0
print(0.compareTo(-0)); // 0
print(0.compareTo(0)); // 0
print((-0.0).compareTo(0.0)); // -1
print((0.0).compareTo(-0.0)); // 1
print((0.0).compareTo(0.0)); // 0
}
数値以外
数値以外を指定するとエラーが発生します。
void main() {
print(('1').compareTo(1.2));
Error: The argument type 'double' can't be assigned to the parameter type 'String'.
}
-
前の記事
mac ディレクトリ配下にあるディレクトリの数を表示する 2022.10.11
-
次の記事
Rust エラー「error: character literal may only contain one codepoint」が発生した場合の対処法 2022.10.11
コメントを書く