Dart數位


Dart數位可歸類為 -

  • int資料型別 - 任意大小的整數,int資料型別用於表示整數。
  • double資料型別 - 64位元(雙精度)浮點數,由IEEE 754標準規定。double資料型別用於表示小數。

num型別被intdouble型別繼承。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 返回-10或加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 丟棄小數位後返回一個整數。