Dart數位可歸類為 -
int
資料型別 - 任意大小的整數,int
資料型別用於表示整數。double
資料型別 - 64位元(雙精度)浮點數,由IEEE 754標準規定。double
資料型別用於表示小數。num
型別被int
和double
型別繼承。dart核心庫允許對數值進行大量操作。
宣告數位的語法如下 -
int var_name; // declares an integer variable
double var_name; // declares a double variable
範例
void main() {
int num1 = 10;
// declare an integer
double num2 = 10.50;
// declare a double value
print(num1);
print(num2);
}
執行上面範例程式碼,得到以下結果:
10
10.5
註 - 如果將小數值分配給整數變數,Dart VM將丟擲異常。
parse()
靜態函式用於將包含數位文字的字串解析為數位。如下面程式碼所示 -
void main() {
print(num.parse('12'));
print(num.parse('10.91'));
}
執行上面範例程式碼,得到以下結果 -
12
10.91
如果傳遞除數位以外的值,則解析函式將丟擲FormatException
。以下程式碼顯示如何將字母數位值傳遞給parse()
函式。
void main() {
print(num.parse('1A'));
print(num.parse('Abc'));
}
執行上面範例程式碼,得到以下結果 -
$dart main.dart
Unhandled exception:
FormatException: 1A
#0 num.parse (dart:core/num.dart:446)
#1 main (file:///home/cg/root/9658342/main.dart:2:14)
#2 _startIsolate.<anonymous closure> (dart:isolate-patch/isolate_patch.dart:255)
#3 _RawReceivePortImpl._handleMessage (dart:isolate-patch/isolate_patch.dart:142)
下表列出了Dart數位支援的屬性。
編號 | 屬性 | 描述 |
---|---|---|
1 | hashcode | 返回數值的雜湊碼。 |
2 | isFinite | 如果數位有限,則返回為true ; 否則返回false 。 |
3 | isInfinite | 如果數位為正無窮大或負無窮大,則返回為true ; 否則返回false 。 |
4 | isNan |
如果數位是double 非數位值,則返回為true ; 否則返回false 。 |
5 | isNegative | 如果數位為負,則返回為true ; 否則返回false 。 |
6 | sign | 返回-1 ,0 或加1 ,具體取決於數位的符號和數值。 |
7 | isEven | 如果數位是偶數,則返回為true ; 否則返回false 。 |
8 | isOdd | 如果數位是奇數,則返回為true ; 否則返回false 。 |
以下是數位支援的常用方法列表 -
編號 | 方法 | 描述 |
---|---|---|
1 | abs | 返回數位的絕對值。 |
2 | ceil | 返回不小於該數位的最小整數。 |
3 | compareTo | 將此與其他數位進行比較。 |
4 | floor | 返回不大於當前數位的最大整數。 |
5 | remainder | 除以兩個數後,返回截斷的餘數。 |
6 | round | 返回最接近當前數位的整數。 |
7 | toDouble | 返回數位的double 等效值。 |
8 | toInt | 返回數位的int 等效值。 |
9 | toString | 返回數位的字串等效表示形式。 |
10 | truncate | 丟棄小數位後返回一個整數。 |