Estructura decimal en C#

En C#, la clase Decimal Struct se usa para representar un número de coma flotante decimal. El rango de números decimales es +79,228,162,514,264,337,593,543,950,335 a -79,228,162,514,264,337,593,543,950,335. Debido a su amplio rango, generalmente se usa para cálculos financieros que requieren un gran número de dígitos enteros y fraccionarios significativos y sin errores de redondeo. También puede realizar las operaciones matemáticas en tipo Decimal como suma, resta, división, multiplicación, etc.

Constructores

Constructor Descripción
decimal (doble) Inicializa una nueva instancia de Decimal con el valor del número de punto flotante de doble precisión especificado.
Decimales (Int32) Inicializa una nueva instancia de Decimal con el valor del entero de 32 bits con signo especificado.
Decimales(Int32[]) Inicializa una nueva instancia de Decimal a un valor decimal representado en binario y contenido en una array especificada.
Decimales (Int64) Inicializa una nueva instancia de Decimal con el valor del entero de 64 bits con signo especificado.
decimal (único) Inicializa una nueva instancia de Decimal con el valor del número de punto flotante de precisión simple especificado.
Decimales (UInt32) Inicializa una nueva instancia de Decimal con el valor del entero sin signo de 32 bits especificado.
Decimales (UInt64) Inicializa una nueva instancia de Decimal con el valor del entero sin signo de 64 bits especificado.
Decimal (Int32, Int32, Int32, Booleano, Byte) Inicializa una nueva instancia de Decimal a partir de parámetros que especifican las partes constituyentes de la instancia.

Campos

Campo Descripción
Valor máximo Representa el mayor valor posible de Decimal. Este campo es constante y de solo lectura.
Menos uno Representa el número menos uno (-1).
valor mínimo Representa el valor más pequeño posible de Decimal. Este campo es constante y de solo lectura.
Una Representa el número uno (1).
Cero Representa el número cero (0).

Ejemplo:

// 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);
    }
}
Producción:

Display Maximum value of Decimal: 79228162514264337593543950335
Display Minimum value of Decimal: -79228162514264337593543950335

Métodos

Método Descripción
Añadir(decimal, decimal) Agrega dos valores decimales especificados.
Techo (decimal) Devuelve el valor integral más pequeño que es mayor o igual que el número decimal especificado.
Comparar (decimal, decimal) Compara dos valores decimales especificados.
Comparar con() Compara esta instancia con un objeto especificado o Decimal y devuelve una indicación de sus valores relativos.
Dividir (decimal, decimal) Divide dos valores decimales especificados.
Iguales() Devuelve un valor que indica si dos instancias de Decimal representan el mismo valor.
Piso (decimales) Redondea un número decimal especificado al entero más cercano hacia el infinito negativo.
DesdeOACurrency(Int64) Convierte el entero de 64 bits con signo especificado, que contiene un valor de moneda de automatización OLE, en el valor decimal equivalente.
ObtenerBits(Decimal) Convierte el valor de una instancia especificada de Decimal en su representación binaria equivalente.
Obtener código hash() Devuelve el código hash de esta instancia.
ObtenerCódigoTipo() Devuelve el TypeCode para el tipo de valor Decimal.
Multiplicar(decimal, decimal) Multiplica dos valores decimales especificados.
Negar (decimal) Devuelve el resultado de multiplicar el valor decimal especificado por uno negativo.
Analizar gramaticalmente() Convierte la representación de string de un número a su equivalente decimal.
Resto (decimal, decimal) Calcula el resto después de dividir dos valores decimales.
Redondo() Redondea un valor al entero más cercano o al número especificado de lugares decimales.
Restar(decimal, decimal) Resta un valor decimal especificado de otro.
ToByte(decimal) Convierte el valor del decimal especificado en el entero equivalente de 8 bits sin signo.
ParaDoble(Decimal) Convierte el valor del Decimal especificado en el número de punto flotante de doble precisión equivalente.
ToInt16 (decimal) Convierte el valor del decimal especificado en el entero equivalente de 16 bits con signo.
ToInt32(decimales) Convierte el valor del decimal especificado en el entero equivalente de 32 bits con signo.
ToInt64 (decimal) Convierte el valor del decimal especificado en el entero equivalente de 64 bits con signo.
ToOACurrency (decimal) Convierte el valor decimal especificado en el valor de moneda de automatización OLE equivalente, que está contenido en un entero de 64 bits con signo.
ToSByte (decimal) Convierte el valor del decimal especificado en el entero equivalente de 8 bits con signo.
ASingle(Decimal) Convierte el valor del Decimal especificado en el número de punto flotante de precisión simple equivalente.
Enstringr() Convierte el valor numérico de esta instancia en su representación String equivalente.
ToUInt16(decimal) Convierte el valor del decimal especificado en el entero sin signo de 16 bits equivalente.
ToUInt32(decimal) Convierte el valor del Decimal especificado en el entero equivalente de 32 bits sin signo.
ToUInt64(decimal) Convierte el valor del Decimal especificado en el entero equivalente de 64 bits sin signo.
Truncar (decimal) Devuelve los dígitos enteros del Decimal especificado; cualquier dígito fraccionario se descarta.
TryParse() Convierte la representación de string de un número a su equivalente decimal. Un valor de retorno indica si la conversión tuvo éxito o falló.

Ejemplo:

// 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);
    }
}
Producción:

Addition is: 939

Operadores

Operador Descripción
Adición (decimal, decimal) Agrega dos valores decimales especificados.
Decremento (decimal) Decrementa el operando Decimal en uno.
División (decimal, decimal) Divide dos valores decimales especificados.
Igualdad (decimal, decimal) Devuelve un valor que indica si dos valores Decimal son iguales.
Explícito (simple a decimal) Define una conversión explícita de un número de punto flotante de precisión simple a un decimal.
Explícito (doble a decimal) Define una conversión explícita de un número de punto flotante de doble precisión a un decimal.
Explícito (Decimal a UInt32) Define una conversión explícita de un decimal a un entero sin signo de 32 bits.
Explícito (Decimal a UInt16) Define una conversión explícita de un decimal a un entero sin signo de 16 bits.
Explícito (decimal a simple) Define una conversión explícita de un decimal a un número de punto flotante de precisión simple.
Explícito (Decimal a SByte) Define una conversión explícita de un decimal a un entero con signo de 8 bits.
Explícito (Decimal a UInt64) Define una conversión explícita de un decimal a un entero sin signo de 64 bits.
Explícito (Decimal a Int32) Define una conversión explícita de un decimal a un entero con signo de 32 bits.
Explícito (Decimal a Int16) Define una conversión explícita de un decimal a un entero con signo de 16 bits.
Explícito (Decimal a Doble) Define una conversión explícita de un decimal a un número de coma flotante de precisión doble.
Explícito (Decimal a Char) Define una conversión explícita de un carácter Decimal a Unicode.
Explícito (decimal a byte) Define una conversión explícita de un decimal a un entero sin signo de 8 bits.
Explícito (Decimal a Int64) Define una conversión explícita de un decimal a un entero con signo de 64 bits.
Mayor que (decimal, decimal) Devuelve un valor que indica si un decimal especificado es mayor que otro decimal especificado.
mayor que o igual (decimal, decimal) Devuelve un valor que indica si un decimal especificado es mayor o igual que otro decimal especificado.
Implícito (UInt32 a decimal) Define una conversión implícita de un entero sin signo de 32 bits a un decimal.
Implícito (UInt16 a decimal) Define una conversión implícita de un entero sin signo de 16 bits a un decimal.
Implícito (SByte a decimal) Define una conversión implícita de un entero de 8 bits con signo a un decimal.
Implícito (Int64 a Decimal) Define una conversión implícita de un entero con signo de 64 bits a un decimal.
Implícito (byte a decimal) Define una conversión implícita de un entero sin signo de 8 bits a un decimal.
Implícito (Int16 a Decimal) Define una conversión implícita de un entero con signo de 16 bits a un decimal.
Implícito (Char a Decimal) Define una conversión implícita de un carácter Unicode a Decimal.
Implícito (UInt64 a decimal) Define una conversión implícita de un entero sin signo de 64 bits a un decimal.
Implícito (Int32 a Decimal) Define una conversión implícita de un entero con signo de 32 bits a un decimal.
Incremento (decimal) Incrementa el operando Decimal en 1.
Desigualdad(Decimal, Decimal) Devuelve un valor que indica si dos objetos Decimal tienen valores diferentes.
Menos que (decimal, decimal) Devuelve un valor que indica si un decimal especificado es menor que otro decimal especificado.
Menos que o igual (decimal, decimal) Devuelve un valor que indica si un decimal especificado es menor o igual que otro decimal especificado.
Módulo (decimal, decimal) Devuelve el resto resultante de dividir dos valores decimales especificados.
Multiplicar(decimal, decimal) Multiplica dos valores decimales especificados.
Resta (decimal, decimal) Resta dos valores decimales especificados.
UnarioNegación(Decimal) Niega el valor del operando Decimal especificado.
UnarioMás(Decimal) Devuelve el valor del operando Decimal (el signo del operando no cambia).

Ejemplo:

// 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);
    }
}
Producción:

My value 1 is: 1000
Decrease myval1 by 1:999

My value 2 is: 10000
Increase myval2 by 1:10001

Referencia:

Publicación traducida automáticamente

Artículo escrito por ankita_saini y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *