Numbers

Dart numbers can be classified as −

  • int − Integer of arbitrary size. The int data type is used to represent whole numbers.
  • double − 64-bit (double-precision) floating-point numbers, as specified by the IEEE 754 standard. The double data type is used to represent fractional numbers

The num type is inherited by the int and double types. The dart core library allows numerous operations on numeric values.

The syntax for declaring a number is as given below −

int var_name;      // declares an integer variable 
double var_name;   // declares a double variable 

Example

void main() {
   // declare an integer
   int num1 = 10;             
     
   // declare a double value
   double num2 = 10.50;  

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

It will produce the following output −

10 
10.5 

Note − The Dart VM will throw an exception if fractional values are assigned to integer variables.

Parsing

The parse() static function allows parsing a string containing numeric literal into a number. The following illustration demonstrates the same −

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

The above code will result in the following output −

12 
10.91

The parse function throws a FormatException if it is passed any value other than numerals. The following code shows how to pass an alpha-numeric value to the parse() function.

Example

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

The above code will result in the following output −

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)

Number Properties

The following table lists the properties supported by Dart numbers.

Sr.NoProperty & Description
1hashcodeReturns a hash code for a numerical value.
2isFiniteTrue if the number is finite; otherwise, false.
3isInfiniteTrue if the number is positive infinity or negative infinity; otherwise, false.
4isNanTrue if the number is the double Not-a-Number value; otherwise, false.
5isNegativeTrue if the number is negative; otherwise, false.
6signReturns minus one, zero or plus one depending on the sign and numerical value of the number.
7isEvenReturns true if the number is an even number.
8isOddReturns true if the number is an odd number.

Number Methods

Given below are a list of commonly used methods supported by numbers −

Sr.NoMethod & Description
1absReturns the absolute value of the number.
2ceilReturns the least integer no smaller than the number.
3compareToCompares this to other number.
4FloorReturns the greatest integer not greater than the current number.
5remainderReturns the truncated remainder after dividing the two numbers.
6RoundReturns the integer closest to the current numbers.
7toDoubleReturns the double equivalent of the number.
8toIntReturns the integer equivalent of the number.
9toStringReturns the string equivalent representation of the number.
10truncateReturns an integer after discarding any fractional digits.

Comments

Leave a Reply

Your email address will not be published. Required fields are marked *