Decimal Struct in C#
In C#, Decimal Struct class is used to represent a decimal floating-point number. The range of decimal numbers is +79,228,162,514,264,337,593,543,950,335 to -79,228,162,514,264,337,593,543,950,335. Due to its wide range, it is generally used for financial calculations which required large numbers of significant integral and fractional digits and no round-off errors. You can also perform the mathematical operations on Decimal type like addition, subtraction, division, multiplication, etc.
Constructors
Constructor | Description |
---|---|
Decimal(Double) | Initializes a new instance of Decimal to the value of the specified double-precision floating-point number. |
Decimal(Int32) | Initializes a new instance of Decimal to the value of the specified 32-bit signed integer. |
Decimal(Int32[]) | Initializes a new instance of Decimal to a decimal value represented in binary and contained in a specified array. |
Decimal(Int64) | Initializes a new instance of Decimal to the value of the specified 64-bit signed integer. |
Decimal(Single) | Initializes a new instance of Decimal to the value of the specified single-precision floating-point number. |
Decimal(UInt32) | Initializes a new instance of Decimal to the value of the specified 32-bit unsigned integer. |
Decimal(UInt64) | Initializes a new instance of Decimal to the value of the specified 64-bit unsigned integer. |
Decimal(Int32, Int32, Int32, Boolean, Byte) | Initializes a new instance of Decimal from parameters specifying the instance’s constituent parts. |
Fields
Field | Description |
---|---|
MaxValue | Represents the largest possible value of Decimal. This field is constant and read-only. |
MinusOne | Represents the number negative one (-1). |
MinValue | Represents the smallest possible value of Decimal. This field is constant and read-only. |
One | Represents the number one (1). |
Zero | Represents the number zero (0). |
Example:
// C# program to illustrate the // use of MaxValue and MinValue field using System; public class GFG { // Main method static public void Main() { // Display the Minimum and Maximum values Console.WriteLine( "Display Maximum value " + "of Decimal: {0}" , Decimal.MaxValue); Console.WriteLine( "Display Minimum value of " + "Decimal: {0}" , Decimal.MinValue); } } |
Output:
Display Maximum value of Decimal: 79228162514264337593543950335 Display Minimum value of Decimal: -79228162514264337593543950335
Methods
Method | Description |
---|---|
Add(Decimal, Decimal) | Adds two specified Decimal values. |
Ceiling(Decimal) | Returns the smallest integral value that is greater than or equal to the specified decimal number. |
Compare(Decimal, Decimal) | Compares two specified Decimal values. |
CompareTo() | Compares this instance to a specified object or Decimal and returns an indication of their relative values. |
Divide(Decimal, Decimal) | Divides two specified Decimal values. |
Equals() | Returns a value indicating whether two instances of Decimal represent the same value. |
Floor(Decimal) | Rounds a specified Decimal number to the closest integer toward negative infinity. |
FromOACurrency(Int64) | Converts the specified 64-bit signed integer, which contains an OLE Automation Currency value, to the equivalent Decimal value. |
GetBits(Decimal) | Converts the value of a specified instance of Decimal to its equivalent binary representation. |
GetHashCode() | Returns the hash code for this instance. |
GetTypeCode() | Returns the TypeCode for value type Decimal. |
Multiply(Decimal, Decimal) | Multiplies two specified Decimal values. |
Negate(Decimal) | Returns the result of multiplying the specified Decimal value by negative one. |
Parse() | Converts the string representation of a number to its Decimal equivalent. |
Remainder(Decimal, Decimal) | Computes the remainder after dividing two Decimal values. |
Round() | Rounds a value to the nearest integer or specified number of decimal places. |
Subtract(Decimal, Decimal) | Subtracts one specified Decimal value from another. |
ToByte(Decimal) | Converts the value of the specified Decimal to the equivalent 8-bit unsigned integer. |
ToDouble(Decimal) | Converts the value of the specified Decimal to the equivalent double-precision floating-point number. |
ToInt16(Decimal) | Converts the value of the specified Decimal to the equivalent 16-bit signed integer. |
ToInt32(Decimal) | Converts the value of the specified Decimal to the equivalent 32-bit signed integer. |
ToInt64(Decimal) | Converts the value of the specified Decimal to the equivalent 64-bit signed integer. |
ToOACurrency(Decimal) | Converts the specified Decimal value to the equivalent OLE Automation Currency value, which is contained in a 64-bit signed integer. |
ToSByte(Decimal) | Converts the value of the specified Decimal to the equivalent 8-bit signed integer. |
ToSingle(Decimal) | Converts the value of the specified Decimal to the equivalent single-precision floating-point number. |
ToString() | Converts the numeric value of this instance to its equivalent String representation. |
ToUInt16(Decimal) | Converts the value of the specified Decimal to the equivalent 16-bit unsigned integer. |
ToUInt32(Decimal) | Converts the value of the specified Decimal to the equivalent 32-bit unsigned integer. |
ToUInt64(Decimal) | Converts the value of the specified Decimal to the equivalent 64-bit unsigned integer. |
Truncate(Decimal) | Returns the integral digits of the specified Decimal; any fractional digits are discarded. |
TryParse() | Converts the string representation of a number to its Decimal equivalent. A return value indicates whether the conversion succeeded or failed. |
Example:
// C# program to illustrate the // use of Add(Decimal, Decimal) // method using System; class GFG { // Main method static public void Main() { // Addition of two Decimal values // Using Add() method Decimal val1 = 349; Decimal val2 = 590; Decimal result; result = Decimal.Add(val1, val2); // Display the result Console.WriteLine( "Addition is: {0}" , result); } } |
Output:
Addition is: 939
Operators
Operator | Description |
---|---|
Addition(Decimal, Decimal) | Adds two specified Decimal values. |
Decrement(Decimal) | Decrements the Decimal operand by one. |
Division(Decimal, Decimal) | Divides two specified Decimal values. |
Equality(Decimal, Decimal) | Returns a value that indicates whether two Decimal values are equal. |
Explicit(Single to Decimal) | Defines an explicit conversion of a single-precision floating-point number to a Decimal. |
Explicit(Double to Decimal) | Defines an explicit conversion of a double-precision floating-point number to a Decimal. |
Explicit(Decimal to UInt32) | Defines an explicit conversion of a Decimal to a 32-bit unsigned integer. |
Explicit(Decimal to UInt16) | Defines an explicit conversion of a Decimal to a 16-bit unsigned integer. |
Explicit(Decimal to Single) | Defines an explicit conversion of a Decimal to a single-precision floating-point number. |
Explicit(Decimal to SByte) | Defines an explicit conversion of a Decimal to an 8-bit signed integer. |
Explicit(Decimal to UInt64) | Defines an explicit conversion of a Decimal to a 64-bit unsigned integer. |
Explicit(Decimal to Int32) | Defines an explicit conversion of a Decimal to a 32-bit signed integer. |
Explicit(Decimal to Int16) | Defines an explicit conversion of a Decimal to a 16-bit signed integer. |
Explicit(Decimal to Double) | Defines an explicit conversion of a Decimal to a double-precision floating-point number. |
Explicit(Decimal to Char) | Defines an explicit conversion of a Decimal to a Unicode character. |
Explicit(Decimal to Byte) | Defines an explicit conversion of a Decimal to an 8-bit unsigned integer. |
Explicit(Decimal to Int64) | Defines an explicit conversion of a Decimal to a 64-bit signed integer. |
GreaterThan(Decimal, Decimal) | Returns a value indicating whether a specified Decimal is greater than another specified Decimal. |
GreaterThanOrEqual(Decimal, Decimal) | Returns a value indicating whether a specified Decimal is greater than or equal to another specified Decimal. |
Implicit(UInt32 to Decimal) | Defines an implicit conversion of a 32-bit unsigned integer to a Decimal. |
Implicit(UInt16 to Decimal) | Defines an implicit conversion of a 16-bit unsigned integer to a Decimal. |
Implicit(SByte to Decimal) | Defines an implicit conversion of an 8-bit signed integer to a Decimal. |
Implicit(Int64 to Decimal) | Defines an implicit conversion of a 64-bit signed integer to a Decimal. |
Implicit(Byte to Decimal) | Defines an implicit conversion of an 8-bit unsigned integer to a Decimal. |
Implicit(Int16 to Decimal) | Defines an implicit conversion of a 16-bit signed integer to a Decimal. |
Implicit(Char to Decimal) | Defines an implicit conversion of a Unicode character to a Decimal. |
Implicit(UInt64 to Decimal) | Defines an implicit conversion of a 64-bit unsigned integer to a Decimal. |
Implicit(Int32 to Decimal) | Defines an implicit conversion of a 32-bit signed integer to a Decimal. |
Increment(Decimal) | Increments the Decimal operand by 1. |
Inequality(Decimal, Decimal) | Returns a value that indicates whether two Decimal objects have different values. |
LessThan(Decimal, Decimal) | Returns a value indicating whether a specified Decimal is less than another specified Decimal. |
LessThanOrEqual(Decimal, Decimal) | Returns a value indicating whether a specified Decimal is less than or equal to another specified Decimal. |
Modulus(Decimal, Decimal) | Returns the remainder resulting from dividing two specified Decimal values. |
Multiply(Decimal, Decimal) | Multiplies two specified Decimal values. |
Subtraction(Decimal, Decimal) | Subtracts two specified Decimal values. |
UnaryNegation(Decimal) | Negates the value of the specified Decimal operand. |
UnaryPlus(Decimal) | Returns the value of the Decimal operand (the sign of the operand is unchanged). |
Example:
// C# program to illustrate the // use of Decrement and Increment // operator using System; class GFG { static public void Main() { Decimal myval1 = 1000; Decimal myval2 = 10000; // Using Decrement operator we decrease myval1 by 1 Console.WriteLine( "My value 1 is: {0}" , myval1); Console.WriteLine( "Decrease myval1 by 1:{0}" , --myval1); Console.WriteLine(); // Using Increment operator we increase myval2 by 1 Console.WriteLine( "My value 2 is: {0}" , myval2); Console.WriteLine( "Increase myval2 by 1:{0}" , ++myval2); } } |
Output:
My value 1 is: 1000 Decrease myval1 by 1:999 My value 2 is: 10000 Increase myval2 by 1:10001
Reference:
Please Login to comment...