Skip to content

数值类型

  • int:整数值,其取值通常位于 -2^53 和 2^53 之间

  • double:双精度浮点数

  • numintdouble的父类

位运算

二进制码十进数 8421 码

  • &:与运算,两边同位为1才是1,否则为0
dart
1 0 1 0          10
0 0 1 0          2
--------
0 0 1 0          2
  • |:或运算,两边同位遇11,否则为0
dart
1 0 1 0          10
0 0 1 0          2
--------
1 0 1 0          10
  • ~:按位取反,先求补码,再取反,最后加1
dart
0 1 0 0 1          9 二进制 最高位 0 整数 1 负数
0 0 1 1 0          补码
1 1 0 0 1          取反
1 1 0 1 0          加1
--------
1 1 0 1 0          -10
  • ^:按位异或,两边同位不相同的才是1,否则为0
dart
1 0 1 0          10
0 0 1 0          2
--------
1 0 0 0          8
  • <<:左移运算
dart
0 0 0 1          1 二进制
0 0 1 0          左移一位 2
0 1 0 0          左移一位 4
1 0 0 0          左移一位 8
  • >>:右移运算
dart
1 0 0 0          8 二进制
0 1 0 0          右移一位 4
0 0 1 0          右移一位 2
0 0 0 1          右移一位 1

MIT License