dart:core
庫中int.toSigned
方法的用法介紹如下。
用法:
int toSigned(
int width
)
返回此整數的最低有效 width
位,將保留的最高位擴展到符號。這與使用帶符號的 2-s 補碼表示截斷值以適合 width
位相同。返回的值在所有高於 width
的位置具有相同的位值。
// V--sign bit-V
16.toSigned(5) == -16; // 00010000 -> 11110000
239.toSigned(5) == 15; // 11101111 -> 00001111
// ^ ^
此操作可用於從低級語言模擬算術。例如,要增加一個 8 位有符號數量:
q = (q + 1).toSigned(8);
q
將從 0
計數到 127
,換行到 -128
並重新計數到 127
。
如果輸入值適合 width
位且沒有截斷,則結果與輸入相同。避免截斷 x
所需的最小寬度是 x.bitLength + 1
,即
x == x.toSigned(x.bitLength + 1);
相關用法
- Dart int.toUnsigned用法及代碼示例
- Dart int.toRadixString用法及代碼示例
- Dart int.tryParse用法及代碼示例
- Dart int.fromEnvironment用法及代碼示例
- Dart int.bitLength用法及代碼示例
- Dart int.operator_shift_left用法及代碼示例
- Dart int.parse用法及代碼示例
- Dart int.operator_bitwise_and用法及代碼示例
- Dart int.operator_bitwise_exclusive_or用法及代碼示例
- Dart int.operator_triple_shift用法及代碼示例
- Dart int.operator_bitwise_or用法及代碼示例
- Dart int.gcd用法及代碼示例
- Dart int.operator_shift_right用法及代碼示例
- Dart identityHashCode用法及代碼示例
- Dart identical用法及代碼示例
- Dart MapMixin.containsKey用法及代碼示例
- Dart Iterator用法及代碼示例
- Dart AttributeClassSet.intersection用法及代碼示例
- Dart num.sign用法及代碼示例
- Dart TransformList.last用法及代碼示例
- Dart FileList.first用法及代碼示例
- Dart CanvasRenderingContext2D.drawImageScaledFromSource用法及代碼示例
- Dart FileList.length用法及代碼示例
- Dart Iterable.takeWhile用法及代碼示例
- Dart LinkedHashMap用法及代碼示例
注:本文由純淨天空篩選整理自dart.dev大神的英文原創作品 toSigned method。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。