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() {
   // declare an integer
   int num1 = 10;             
     
   // declare a double value
   double num2 = 10.50;  

   // print the values
   print(num1);
   print(num2);
}

它将产生以下输出 -

10 
10.5 

注意 - 如果将小数赋值给整数变量,则 Dart VM 将抛出异常。

解析

parse() 静态函数允许将包含数字字面量的字符串解析为数字。以下示例演示了相同的功能 -

void main() { 
   print(num.parse('12')); 
   print(num.parse('10.91')); 
}

以上代码将产生以下输出 -

12 
10.91

如果传递任何非数字值,parse 函数将抛出 FormatException。以下代码显示了如何将字母数字值传递给 parse() 函数。

示例

void main() { 
   print(num.parse('12A')); 
   print(num.parse('AAAA')); 
}

以上代码将产生以下输出 -

Unhandled exception: 
FormatException: 12A 
#0 num.parse (dart:core/num.dart:446) 
#1 main (file:///D:/Demos/numbers.dart:4:13) 
#2 _startIsolate.<anonymous closure> (dart:isolatepatch/isolate_patch.dart:261) 
#3 _RawReceivePortImpl._handleMessage (dart:isolatepatch/isolate_patch.dart:148)

数字属性

下表列出了 Dart 数字支持的属性。

序号 属性和描述
1 hashcode

返回数值的哈希码。

2 isFinite

如果数字是有限的,则为真;否则为假。

3 isInfinite

如果数字是正无穷大或负无穷大,则为真;否则为假。

4 isNan

如果数字是双精度非数字值,则为真;否则为假。

5 isNegative

如果数字为负,则为真;否则为假。

6 sign

根据数字的符号和数值返回负一、零或正一。

7 isEven

如果数字是偶数,则返回 true。

8 isOdd

如果数字是奇数,则返回 true。

数字方法

以下是数字支持的常用方法列表 -

序号 方法和描述
1 abs

返回数字的绝对值。

2 ceil

返回不小于数字的最小整数。

3 compareTo

将此与其他数字进行比较。

4 Floor

返回不大于当前数字的最大整数。

5 remainder

返回两个数字相除后的截断余数。

6 Round

返回最接近当前数字的整数。

7 toDouble

返回数字的双精度等效值。

8 toInt

返回数字的整数等效值。

9 toString

返回数字的字符串等效表示形式。

10 truncate

丢弃任何小数位后返回一个整数。

广告