Decimal Decimal Decimal Decimal Struct

Определение

Представляет десятичное число с плавающей запятой.Represents a decimal floating-point number.

public value class Decimal : IComparable, IComparable<System::Decimal>, IConvertible, IEquatable<System::Decimal>, IFormattable, System::Runtime::Serialization::IDeserializationCallback
[System.Runtime.InteropServices.ComVisible(true)]
[System.Serializable]
public struct Decimal : IComparable, IComparable<decimal>, IConvertible, IEquatable<decimal>, IFormattable, System.Runtime.Serialization.IDeserializationCallback
type decimal = struct
    interface IFormattable
    interface IConvertible
    interface IDeserializationCallback
Public Structure Decimal
Implements IComparable, IComparable(Of Decimal), IConvertible, IDeserializationCallback, IEquatable(Of Decimal), IFormattable
Наследование
Атрибуты
Реализации

Примеры

В следующем коде показано использование функции Decimal.The following code example demonstrates the use of Decimal.

   /// <summary>
   /// Keeping my fortune in Decimals to avoid the round-off errors.
   /// </summary>
   public ref class PiggyBank
   {
   protected:
      Decimal MyFortune;

   public:
      void AddPenny()
      {
         MyFortune = System::Decimal::Add( MyFortune, Decimal(.01) );
      }

      System::Decimal Capacity()
      {
         return MyFortune.MaxValue;
      }

      Decimal Dollars()
      {
         return Decimal::Floor( MyFortune );
      }

      Decimal Cents()
      {
         return Decimal::Subtract( MyFortune, Decimal::Floor( MyFortune ) );
      }

      virtual System::String^ ToString() override
      {
         return MyFortune.ToString("C")+" in piggy bank";
      }
   };
}
/// <summary>
/// Keeping my fortune in Decimals to avoid the round-off errors.
/// </summary>
class PiggyBank {
    protected decimal MyFortune;

    public void AddPenny() {
        MyFortune = Decimal.Add(MyFortune, .01m);
    }

    public decimal Capacity {
        get {
            return Decimal.MaxValue;
        }
    }

    public decimal Dollars {
        get {
            return Decimal.Floor(MyFortune);
        }
    }

    public decimal Cents {
        get {
            return Decimal.Subtract(MyFortune, Decimal.Floor(MyFortune));
        }
    }

    public override string ToString() {
        return MyFortune.ToString("C")+" in piggy bank";
    }
}
' Keeping my fortune in Decimals to avoid the round-off errors.
Class PiggyBank
    Protected MyFortune As Decimal

    Public Sub AddPenny()
        MyFortune = [Decimal].Add(MyFortune, 0.01D)
    End Sub

    Public ReadOnly Property Capacity() As Decimal
        Get
            Return [Decimal].MaxValue
        End Get
    End Property

    Public ReadOnly Property Dollars() As Decimal
        Get
            Return [Decimal].Floor(MyFortune)
        End Get
    End Property

    Public ReadOnly Property Cents() As Decimal
        Get
            Return [Decimal].Subtract(MyFortune, [Decimal].Floor(MyFortune))
        End Get
    End Property

    Public Overrides Function ToString() As String
        Return MyFortune.ToString("C") + " in piggy bank"
    End Function
End Class

Комментарии

Тип Decimal значения представляет десятичные числа в диапазоне от плюс 79,228,162,514,264,337,593,543,950,335 до минус 79,228,162,514,264,337,593,543,950,335.The Decimal value type represents decimal numbers ranging from positive 79,228,162,514,264,337,593,543,950,335 to negative 79,228,162,514,264,337,593,543,950,335. Значение по умолчанию Decimal равно 0.The default value of a Decimal is 0. Тип Decimal значения подходит для финансовых вычислений, требующих большого числа значащих цифр целой и дробной части и отсутствия ошибок округления.The Decimal value type is appropriate for financial calculations that require large numbers of significant integral and fractional digits and no round-off errors. Decimal Тип не устраняет необходимость округления.The Decimal type does not eliminate the need for rounding. Но он сводит к минимуму ошибки, возникающие из-за округления.Rather, it minimizes errors due to rounding. Например, следующий код создает результат 0.9999999999999999999999999999 вместо 1.For example, the following code produces a result of 0.9999999999999999999999999999 instead of 1.

using namespace System;

void main()
{
   Decimal dividend = Decimal::One;
   Decimal divisor = 3;
   // The following displays 0.9999999999999999999999999999 to the console
   Console::WriteLine(dividend/divisor * divisor);   
}
decimal dividend = Decimal.One;
decimal divisor = 3;
// The following displays 0.9999999999999999999999999999 to the console
Console.WriteLine(dividend/divisor * divisor);   
Dim dividend As Decimal = Decimal.One
Dim divisor As Decimal = 3
' The following displays 0.9999999999999999999999999999 to the console
Console.WriteLine(dividend/divisor * divisor)   

Когда результат деления и умножения передается Round в метод, результат не теряет точности, как показано в следующем коде.When the result of the division and multiplication is passed to the Round method, the result suffers no loss of precision, as the following code shows.

using namespace System;


void main()
{
   Decimal dividend = Decimal::One;
   Decimal divisor = 3;
   // The following displays 1.00 to the console
   Console::WriteLine(Math::Round(dividend/divisor * divisor, 2));   	
}
decimal dividend = Decimal.One;
decimal divisor = 3;
// The following displays 1.00 to the console
Console.WriteLine(Math.Round(dividend/divisor * divisor, 2));   
Dim dividend As Decimal = Decimal.One
Dim divisor As Decimal = 3
' The following displays 1.00 to the console
Console.WriteLine(Math.Round(dividend/divisor * divisor, 2))   

Десятичное число — это значение с плавающей запятой, состоящее из знака, числового значения, где каждая цифра в диапазоне от 0 до 9, и коэффициент масштабирования, указывающий позицию плавающей десятичной запятой, разделяющую целую и дробную части элемента числовое значение.A decimal number is a floating-point value that consists of a sign, a numeric value where each digit in the value ranges from 0 to 9, and a scaling factor that indicates the position of a floating decimal point that separates the integral and fractional parts of the numeric value.

Двоичное представление Decimal значения состоит из 1-разрядного знака, 96-разрядного целого числа и коэффициента масштабирования, используемого для деления 96-разрядного целого числа и указания того, какая часть является десятичной дробью.The binary representation of a Decimal value consists of a 1-bit sign, a 96-bit integer number, and a scaling factor used to divide the 96-bit integer and specify what portion of it is a decimal fraction. Коэффициент масштабирования неявно является числом 10, возведенным в степень в диапазоне от 0 до 28.The scaling factor is implicitly the number 10, raised to an exponent ranging from 0 to 28. Decimal Таким образом, двоичное представление значения в форме ((от-296 до 296)/10 (от0 до 28)), где-( MinValue296-1) равно, а 296-1 равно MaxValue.Therefore, the binary representation of a Decimal value the form, ((-296 to 296) / 10(0 to 28)), where -(296-1) is equal to MinValue, and 296-1 is equal to MaxValue. Дополнительные сведения о двоичном представлении Decimal значений и пример см. в Decimal(Int32[]) разделе Конструктор и GetBits метод.For more information about the binary representation of Decimal values and an example, see the Decimal(Int32[]) constructor and the GetBits method.

Коэффициент масштабирования также сохраняет конечные нули в Decimal числе.The scaling factor also preserves any trailing zeros in a Decimal number. Замыкающие нули не влияют на значение Decimal числа в арифметической операции или операциях сравнения.Trailing zeros do not affect the value of a Decimal number in arithmetic or comparison operations. Однако замыкающие нули могут быть отображены ToString методом, если применяется соответствующая строка формата.However, trailing zeros might be revealed by the ToString method if an appropriate format string is applied.

Рекомендации по преобразованиюConversion Considerations

Этот тип предоставляет методы, которые Decimal преобразуют значения в значения SByte Byte Int16 Int32 Int64 UInt64 ,, ,UInt32,,,, и из значений,,,,,, и. UInt16This type provides methods that convert Decimal values to and from SByte, Int16, Int32, Int64, Byte, UInt16, UInt32, and UInt64 values. Преобразования из этих целочисленных типов Decimal в расширяют преобразования, которые никогда не теряют информацию или создают исключения.Conversions from these integral types to Decimal are widening conversions that never lose information or throw exceptions.

Преобразования из Decimal в любой из целочисленных типов являются сужающими преобразованиями, Decimal которые округляют значение до ближайшего целого числа в сторону нуля.Conversions from Decimal to any of the integral types are narrowing conversions that round the Decimal value to the nearest integer value toward zero. Некоторые языки, такие как C#, также поддерживают преобразование Decimal значений в Char значения.Some languages, such as C#, also support the conversion of Decimal values to Char values. Если результат этих преобразований не может быть представлен в целевом типе, OverflowException возникает исключение.If the result of these conversions cannot be represented in the destination type, an OverflowException exception is thrown.

Тип также предоставляет методы, которые преобразуют Decimal значения в значения и Single из значений и Double. DecimalThe Decimal type also provides methods that convert Decimal values to and from Single and Double values. Преобразования из Decimal в Single или Double являются сужающими преобразованиями, которые могут потерять точность, но не сведения о величине преобразованного значения.Conversions from Decimal to Single or Double are narrowing conversions that might lose precision but not information about the magnitude of the converted value. Преобразование не создает исключение.The conversion does not throw an exception.

Преобразования из Single или Double для Decimal выдачи OverflowException исключения ,Decimalесли результат преобразования не может быть представлен как.Conversions from Single or Double to Decimal throw an OverflowException exception if the result of the conversion cannot be represented as a Decimal.

Выполнение операций с десятичными значениямиPerforming Operations on Decimal Values

Decimal Тип поддерживает стандартные математические операции, такие как сложение, вычитание, деление, умножение и унарное отрицание.The Decimal type supports standard mathematical operations such as addition, subtraction, division, multiplication, and unary negation. Вы также можете напрямую работать с двоичным представлением Decimal значения, GetBits вызвав метод.You can also work directly with the binary representation of a Decimal value by calling the GetBits method.

Для сравнения двух Decimal значений можно использовать стандартные операторы числового сравнения или CompareTo вызвать метод или Equals .To compare two Decimal values, you can use the standard numeric comparison operators, or you can call the CompareTo or Equals method.

Также можно вызывать члены Math класса для выполнения широкого спектра числовых операций, включая получение абсолютного значения числа, определение максимального или минимального значения двух Decimal значений, получение знака числа и округление число.You can also call the members of the Math class to perform a wide range of numeric operations, including getting the absolute value of a number, determining the maximum or minimum value of two Decimal values, getting the sign of a number, and rounding a number.

Конструкторы

Decimal(Double) Decimal(Double) Decimal(Double) Decimal(Double)

Инициализирует новый экземпляр Decimal, используя значение заданного числа двойной точности с плавающей запятой.Initializes a new instance of Decimal to the value of the specified double-precision floating-point number.

Decimal(Int32) Decimal(Int32) Decimal(Int32) Decimal(Int32)

Инициализирует новый экземпляр Decimal, используя значение указанного 32-разрядного целого числа со знаком.Initializes a new instance of Decimal to the value of the specified 32-bit signed integer.

Decimal(Int32[]) Decimal(Int32[]) Decimal(Int32[]) Decimal(Int32[])

Инициализирует новый экземпляр Decimal с представленным в двоичном виде десятичным значением, содержащимся в указанном массиве.Initializes a new instance of Decimal to a decimal value represented in binary and contained in a specified array.

Decimal(Int64) Decimal(Int64) Decimal(Int64) Decimal(Int64)

Инициализирует новый экземпляр Decimal, используя значение указанного 64-разрядного целого числа со знаком.Initializes a new instance of Decimal to the value of the specified 64-bit signed integer.

Decimal(Single) Decimal(Single) Decimal(Single) Decimal(Single)

Инициализирует новый экземпляр Decimal, используя значение заданного числа одиночной точности с плавающей запятой.Initializes a new instance of Decimal to the value of the specified single-precision floating-point number.

Decimal(UInt32) Decimal(UInt32) Decimal(UInt32) Decimal(UInt32)

Инициализирует новый экземпляр Decimal, используя значение указанного 32-разрядного целого числа без знака.Initializes a new instance of Decimal to the value of the specified 32-bit unsigned integer.

Decimal(UInt64) Decimal(UInt64) Decimal(UInt64) Decimal(UInt64)

Инициализирует новый экземпляр Decimal, используя значение указанного 64-разрядного целого числа без знака.Initializes a new instance of Decimal to the value of the specified 64-bit unsigned integer.

Decimal(Int32, Int32, Int32, Boolean, Byte) Decimal(Int32, Int32, Int32, Boolean, Byte) Decimal(Int32, Int32, Int32, Boolean, Byte) Decimal(Int32, Int32, Int32, Boolean, Byte)

Инициализирует новый экземпляр Decimal на основе параметров, задающих составные части экземпляра.Initializes a new instance of Decimal from parameters specifying the instance's constituent parts.

Поля

MaxValue MaxValue MaxValue MaxValue

Представляет наибольшее возможное значение типа Decimal.Represents the largest possible value of Decimal. В этом поле содержится константа, и оно доступно только для чтения.This field is constant and read-only.

MinusOne MinusOne MinusOne MinusOne

Представляет число минус один (-1).Represents the number negative one (-1).

MinValue MinValue MinValue MinValue

Представляет минимально допустимое значение типа Decimal.Represents the smallest possible value of Decimal. В этом поле содержится константа, и оно доступно только для чтения.This field is constant and read-only.

One One One One

Представляет число один (1).Represents the number one (1).

Zero Zero Zero Zero

Представляет число нуль (0).Represents the number zero (0).

Методы

Add(Decimal, Decimal) Add(Decimal, Decimal) Add(Decimal, Decimal) Add(Decimal, Decimal)

Суммирует два заданных значения типа Decimal.Adds two specified Decimal values.

Ceiling(Decimal) Ceiling(Decimal) Ceiling(Decimal) Ceiling(Decimal)

Возвращает наименьшее целое число, которое больше или равно заданному десятичному числу.Returns the smallest integral value that is greater than or equal to the specified decimal number.

Compare(Decimal, Decimal) Compare(Decimal, Decimal) Compare(Decimal, Decimal) Compare(Decimal, Decimal)

Сравнивает два заданных значения Decimal.Compares two specified Decimal values.

CompareTo(Decimal) CompareTo(Decimal) CompareTo(Decimal) CompareTo(Decimal)

Сравнивает этот экземпляр с заданным объектом Decimal и возвращает сравнение значений этих объектов.Compares this instance to a specified Decimal object and returns a comparison of their relative values.

CompareTo(Object) CompareTo(Object) CompareTo(Object) CompareTo(Object)

Сравнивает этот экземпляр с заданным объектом и возвращает сравнение значений этих объектов.Compares this instance to a specified object and returns a comparison of their relative values.

Divide(Decimal, Decimal) Divide(Decimal, Decimal) Divide(Decimal, Decimal) Divide(Decimal, Decimal)

Выполняет деление двух заданных значений типа Decimal.Divides two specified Decimal values.

Equals(Decimal) Equals(Decimal) Equals(Decimal) Equals(Decimal)

Возвращает значение, позволяющее определить, представляют ли этот экземпляр и заданный объект Decimal одно и то же значение.Returns a value indicating whether this instance and a specified Decimal object represent the same value.

Equals(Object) Equals(Object) Equals(Object) Equals(Object)

Возвращает значение, позволяющее определить, представляют ли этот экземпляр и заданный объект Object равные значения и типы.Returns a value indicating whether this instance and a specified Object represent the same type and value.

Equals(Decimal, Decimal) Equals(Decimal, Decimal) Equals(Decimal, Decimal) Equals(Decimal, Decimal)

Возвращает значение, позволяющее определить, представляют ли два заданных экземпляра Decimal равные значения.Returns a value indicating whether two specified instances of Decimal represent the same value.

Floor(Decimal) Floor(Decimal) Floor(Decimal) Floor(Decimal)

Округляет заданное число типа Decimal до ближайшего целого в направлении минус бесконечности.Rounds a specified Decimal number to the closest integer toward negative infinity.

FromOACurrency(Int64) FromOACurrency(Int64) FromOACurrency(Int64) FromOACurrency(Int64)

Преобразует заданное 64-разрядное целое число со знаком, соответствующее значению денежного типа OLE-автоматизации, в эквивалентное значение типа Decimal.Converts the specified 64-bit signed integer, which contains an OLE Automation Currency value, to the equivalent Decimal value.

GetBits(Decimal) GetBits(Decimal) GetBits(Decimal) GetBits(Decimal)

Преобразует значение заданного экземпляра Decimal в эквивалентное ему двоичное представление.Converts the value of a specified instance of Decimal to its equivalent binary representation.

GetHashCode() GetHashCode() GetHashCode() GetHashCode()

Возвращает хэш-код данного экземпляра.Returns the hash code for this instance.

GetTypeCode() GetTypeCode() GetTypeCode() GetTypeCode()

Возвращает TypeCode для типа значения Decimal.Returns the TypeCode for value type Decimal.

Multiply(Decimal, Decimal) Multiply(Decimal, Decimal) Multiply(Decimal, Decimal) Multiply(Decimal, Decimal)

Умножает два заданных значения Decimal.Multiplies two specified Decimal values.

Negate(Decimal) Negate(Decimal) Negate(Decimal) Negate(Decimal)

Возвращает результат умножения заданного значения Decimal на минус единицу.Returns the result of multiplying the specified Decimal value by negative one.

Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider) Parse(String, NumberStyles, IFormatProvider)

Преобразует строковое представление числа в его эквивалент Decimal, используя заданный стиль и формат для языка и региональных параметров.Converts the string representation of a number to its Decimal equivalent using the specified style and culture-specific format.

Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider) Parse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider)
Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider) Parse(String, IFormatProvider)

Преобразует строковое представление числа в его эквивалент Decimal, используя заданные сведения о формате для языка и региональных параметров.Converts the string representation of a number to its Decimal equivalent using the specified culture-specific format information.

Parse(String, NumberStyles) Parse(String, NumberStyles) Parse(String, NumberStyles) Parse(String, NumberStyles)

Преобразует строковое представление числа с указанным стилем в его эквивалент в формате Decimal.Converts the string representation of a number in a specified style to its Decimal equivalent.

Parse(String) Parse(String) Parse(String) Parse(String)

Преобразует строковое представление числа в его эквивалент типа Decimal.Converts the string representation of a number to its Decimal equivalent.

Remainder(Decimal, Decimal) Remainder(Decimal, Decimal) Remainder(Decimal, Decimal) Remainder(Decimal, Decimal)

Вычисляет остаток после деления двух значений типа Decimal.Computes the remainder after dividing two Decimal values.

Round(Decimal) Round(Decimal) Round(Decimal) Round(Decimal)

Округляет десятичное значение до ближайшего целого.Rounds a decimal value to the nearest integer.

Round(Decimal, Int32) Round(Decimal, Int32) Round(Decimal, Int32) Round(Decimal, Int32)

Округляет значение Decimal до указанного числа десятичных знаков.Rounds a Decimal value to a specified number of decimal places.

Round(Decimal, MidpointRounding) Round(Decimal, MidpointRounding) Round(Decimal, MidpointRounding) Round(Decimal, MidpointRounding)

Округляет десятичное значение до ближайшего целого.Rounds a decimal value to the nearest integer. Параметр задает правило округления значения, если оно находится ровно посредине между двумя другими числами.A parameter specifies how to round the value if it is midway between two other numbers.

Round(Decimal, Int32, MidpointRounding) Round(Decimal, Int32, MidpointRounding) Round(Decimal, Int32, MidpointRounding) Round(Decimal, Int32, MidpointRounding)

Округляет десятичное значение с указанной точностью.Rounds a decimal value to a specified precision. Параметр задает правило округления значения, если оно находится ровно посредине между двумя другими числами.A parameter specifies how to round the value if it is midway between two other numbers.

Subtract(Decimal, Decimal) Subtract(Decimal, Decimal) Subtract(Decimal, Decimal) Subtract(Decimal, Decimal)

Вычитает одно указанное значение типа Decimal из другого.Subtracts one specified Decimal value from another.

ToByte(Decimal) ToByte(Decimal) ToByte(Decimal) ToByte(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 8-разрядное целое число без знака.Converts the value of the specified Decimal to the equivalent 8-bit unsigned integer.

ToDouble(Decimal) ToDouble(Decimal) ToDouble(Decimal) ToDouble(Decimal)

Преобразует значение заданного значения типа Decimal в эквивалентное число двойной точности с плавающей запятой.Converts the value of the specified Decimal to the equivalent double-precision floating-point number.

ToInt16(Decimal) ToInt16(Decimal) ToInt16(Decimal) ToInt16(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 16-разрядное число со знаком.Converts the value of the specified Decimal to the equivalent 16-bit signed integer.

ToInt32(Decimal) ToInt32(Decimal) ToInt32(Decimal) ToInt32(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 32-разрядное целое число со знаком.Converts the value of the specified Decimal to the equivalent 32-bit signed integer.

ToInt64(Decimal) ToInt64(Decimal) ToInt64(Decimal) ToInt64(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 64-разрядное целое число со знаком.Converts the value of the specified Decimal to the equivalent 64-bit signed integer.

ToOACurrency(Decimal) ToOACurrency(Decimal) ToOACurrency(Decimal) ToOACurrency(Decimal)

Преобразует заданное значение Decimal в эквивалентное значение денежного типа OLE-автоматизации, в котором содержится 64-разрядное целое число со знаком.Converts the specified Decimal value to the equivalent OLE Automation Currency value, which is contained in a 64-bit signed integer.

ToSByte(Decimal) ToSByte(Decimal) ToSByte(Decimal) ToSByte(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 8-разрядное целое число со знаком.Converts the value of the specified Decimal to the equivalent 8-bit signed integer.

ToSingle(Decimal) ToSingle(Decimal) ToSingle(Decimal) ToSingle(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное число одиночной точности с плавающей запятой.Converts the value of the specified Decimal to the equivalent single-precision floating-point number.

ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider) ToString(IFormatProvider)

Преобразует числовое значение данного экземпляра в эквивалентное ему строковое представление с использованием указанных сведений об особенностях форматирования для данного языка и региональных параметров.Converts the numeric value of this instance to its equivalent string representation using the specified culture-specific format information.

ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider) ToString(String, IFormatProvider)

Преобразует числовое значение данного экземпляра в эквивалентное ему строковое представление с использованием указанного формата и сведений об особенностях форматирования для данного языка и региональных параметров.Converts the numeric value of this instance to its equivalent string representation using the specified format and culture-specific format information.

ToString(String) ToString(String) ToString(String) ToString(String)

Преобразует числовое значение данного экземпляра в эквивалентное строковое представление с использованием указанного формата.Converts the numeric value of this instance to its equivalent string representation, using the specified format.

ToString() ToString() ToString() ToString()

Преобразовывает числовое значение данного экземпляра в эквивалентное ему строковое представление.Converts the numeric value of this instance to its equivalent string representation.

ToUInt16(Decimal) ToUInt16(Decimal) ToUInt16(Decimal) ToUInt16(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 16-разрядное целое число без знака.Converts the value of the specified Decimal to the equivalent 16-bit unsigned integer.

ToUInt32(Decimal) ToUInt32(Decimal) ToUInt32(Decimal) ToUInt32(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 32-разрядное целое число без знака.Converts the value of the specified Decimal to the equivalent 32-bit unsigned integer.

ToUInt64(Decimal) ToUInt64(Decimal) ToUInt64(Decimal) ToUInt64(Decimal)

Преобразует значение заданного объекта типа Decimal в эквивалентное 64-разрядное целое число без знака.Converts the value of the specified Decimal to the equivalent 64-bit unsigned integer.

Truncate(Decimal) Truncate(Decimal) Truncate(Decimal) Truncate(Decimal)

Возвращает цифры целой части заданного значения типа Decimal; все цифры дробной части удаляются.Returns the integral digits of the specified Decimal; any fractional digits are discarded.

TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider) TryFormat(Span<Char>, Int32, ReadOnlySpan<Char>, IFormatProvider)
TryParse(String, NumberStyles, IFormatProvider, Decimal) TryParse(String, NumberStyles, IFormatProvider, Decimal) TryParse(String, NumberStyles, IFormatProvider, Decimal) TryParse(String, NumberStyles, IFormatProvider, Decimal)

Преобразует строковое представление числа в его эквивалент Decimal, используя заданный стиль и формат для языка и региональных параметров.Converts the string representation of a number to its Decimal equivalent using the specified style and culture-specific format. Возвращает значение, указывающее, успешно ли выполнено преобразование.A return value indicates whether the conversion succeeded or failed.

TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Decimal) TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Decimal) TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Decimal) TryParse(ReadOnlySpan<Char>, NumberStyles, IFormatProvider, Decimal)
TryParse(ReadOnlySpan<Char>, Decimal) TryParse(ReadOnlySpan<Char>, Decimal) TryParse(ReadOnlySpan<Char>, Decimal) TryParse(ReadOnlySpan<Char>, Decimal)
TryParse(String, Decimal) TryParse(String, Decimal) TryParse(String, Decimal) TryParse(String, Decimal)

Преобразует строковое представление числа в его эквивалент типа Decimal.Converts the string representation of a number to its Decimal equivalent. Возвращает значение, указывающее, успешно ли выполнено преобразование.A return value indicates whether the conversion succeeded or failed.

Операторы

Addition(Decimal, Decimal) Addition(Decimal, Decimal) Addition(Decimal, Decimal) Addition(Decimal, Decimal)

Суммирует два заданных значения типа Decimal.Adds two specified Decimal values.

Decrement(Decimal) Decrement(Decimal) Decrement(Decimal) Decrement(Decimal)

Уменьшает операнд типа Decimal на единицу.Decrements the Decimal operand by one.

Division(Decimal, Decimal) Division(Decimal, Decimal) Division(Decimal, Decimal) Division(Decimal, Decimal)

Выполняет деление двух заданных значений типа Decimal.Divides two specified Decimal values.

Equality(Decimal, Decimal) Equality(Decimal, Decimal) Equality(Decimal, Decimal) Equality(Decimal, Decimal)

Возвращает значение, определяющее, равны ли два значения Decimal.Returns a value that indicates whether two Decimal values are equal.

Explicit(Single to Decimal) Explicit(Single to Decimal) Explicit(Single to Decimal) Explicit(Single to Decimal)

Определяет явное преобразование числа с плавающей запятой одинарной точности в Decimal.Defines an explicit conversion of a single-precision floating-point number to a Decimal.

Explicit(Double to Decimal) Explicit(Double to Decimal) Explicit(Double to Decimal) Explicit(Double to Decimal)

Определяет явное преобразование числа с плавающей запятой двойной точности в Decimal.Defines an explicit conversion of a double-precision floating-point number to a Decimal.

Explicit(Decimal to UInt32) Explicit(Decimal to UInt32) Explicit(Decimal to UInt32) Explicit(Decimal to UInt32)

Определяет явное преобразование Decimal в 32-разрядное целое число без знака.Defines an explicit conversion of a Decimal to a 32-bit unsigned integer.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Explicit(Decimal to UInt16) Explicit(Decimal to UInt16) Explicit(Decimal to UInt16) Explicit(Decimal to UInt16)

Определяет явное преобразование Decimalв 16-разрядное целое число со знаком.Defines an explicit conversion of a Decimal to a 16-bit unsigned integer.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Explicit(Decimal to Single) Explicit(Decimal to Single) Explicit(Decimal to Single) Explicit(Decimal to Single)

Определяет явное преобразование Decimal в число с плавающей запятой одинарной точности.Defines an explicit conversion of a Decimal to a single-precision floating-point number.

Explicit(Decimal to SByte) Explicit(Decimal to SByte) Explicit(Decimal to SByte) Explicit(Decimal to SByte)

Определяет явное преобразование Decimal в 8-разрядное целое число со знаком.Defines an explicit conversion of a Decimal to an 8-bit signed integer.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Explicit(Decimal to UInt64) Explicit(Decimal to UInt64) Explicit(Decimal to UInt64) Explicit(Decimal to UInt64)

Определяет явное преобразование Decimal в 64-разрядное целое число без знака.Defines an explicit conversion of a Decimal to a 64-bit unsigned integer.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Explicit(Decimal to Int32) Explicit(Decimal to Int32) Explicit(Decimal to Int32) Explicit(Decimal to Int32)

Определяет явное преобразование Decimal в 32-разрядное целое число со знаком.Defines an explicit conversion of a Decimal to a 32-bit signed integer.

Explicit(Decimal to Int16) Explicit(Decimal to Int16) Explicit(Decimal to Int16) Explicit(Decimal to Int16)

Определяет явное преобразование Decimal в 16-разрядное целое число со знаком.Defines an explicit conversion of a Decimal to a 16-bit signed integer.

Explicit(Decimal to Double) Explicit(Decimal to Double) Explicit(Decimal to Double) Explicit(Decimal to Double)

Определяет явное преобразование Decimal в число с плавающей запятой двойной точности.Defines an explicit conversion of a Decimal to a double-precision floating-point number.

Explicit(Decimal to Char) Explicit(Decimal to Char) Explicit(Decimal to Char) Explicit(Decimal to Char)

Определяет явное преобразование объекта Decimal в символ Юникод.Defines an explicit conversion of a Decimal to a Unicode character.

Explicit(Decimal to Byte) Explicit(Decimal to Byte) Explicit(Decimal to Byte) Explicit(Decimal to Byte)

Определяет явное преобразование Decimalв 8-разрядное целое число со знаком.Defines an explicit conversion of a Decimal to an 8-bit unsigned integer.

Explicit(Decimal to Int64) Explicit(Decimal to Int64) Explicit(Decimal to Int64) Explicit(Decimal to Int64)

Определяет явное преобразование Decimal в 64-разрядное целое число со знаком.Defines an explicit conversion of a Decimal to a 64-bit signed integer.

GreaterThan(Decimal, Decimal) GreaterThan(Decimal, Decimal) GreaterThan(Decimal, Decimal) GreaterThan(Decimal, Decimal)

Возвращает значение, позволяющее определить, действительно ли заданное значение типа Decimal больше другого заданного значения типа Decimal.Returns a value indicating whether a specified Decimal is greater than another specified Decimal.

GreaterThanOrEqual(Decimal, Decimal) GreaterThanOrEqual(Decimal, Decimal) GreaterThanOrEqual(Decimal, Decimal) GreaterThanOrEqual(Decimal, Decimal)

Возвращает значение, позволяющее определить, действительно ли заданное значение типа Decimal больше или равно другому заданному значению типа Decimal.Returns a value indicating whether a specified Decimal is greater than or equal to another specified Decimal.

Implicit(UInt32 to Decimal) Implicit(UInt32 to Decimal) Implicit(UInt32 to Decimal) Implicit(UInt32 to Decimal)

Определяет неявное преобразование 32-разрядного целого числа без знака в значение типа Decimal.Defines an implicit conversion of a 32-bit unsigned integer to a Decimal.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Implicit(UInt16 to Decimal) Implicit(UInt16 to Decimal) Implicit(UInt16 to Decimal) Implicit(UInt16 to Decimal)

Определяет неявное преобразование 16-разрядного целого числа без знака в значение типа Decimal.Defines an implicit conversion of a 16-bit unsigned integer to a Decimal.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Implicit(SByte to Decimal) Implicit(SByte to Decimal) Implicit(SByte to Decimal) Implicit(SByte to Decimal)

Определяет неявное преобразование 8-разрядного целого числа со знаком в значение типа Decimal.Defines an implicit conversion of an 8-bit signed integer to a Decimal.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Implicit(Int64 to Decimal) Implicit(Int64 to Decimal) Implicit(Int64 to Decimal) Implicit(Int64 to Decimal)

Определяет неявное преобразование 64-разрядного целого числа со знаком в значение типа Decimal.Defines an implicit conversion of a 64-bit signed integer to a Decimal.

Implicit(Byte to Decimal) Implicit(Byte to Decimal) Implicit(Byte to Decimal) Implicit(Byte to Decimal)

Определяет неявное преобразование 8-разрядного целого числа без знака в значение типа Decimal.Defines an implicit conversion of an 8-bit unsigned integer to a Decimal.

Implicit(Int16 to Decimal) Implicit(Int16 to Decimal) Implicit(Int16 to Decimal) Implicit(Int16 to Decimal)

Определяет неявное преобразование 16-разрядного целого числа со знаком в значение типа Decimal.Defines an implicit conversion of a 16-bit signed integer to a Decimal.

Implicit(Char to Decimal) Implicit(Char to Decimal) Implicit(Char to Decimal) Implicit(Char to Decimal)

Определяет неявное преобразование символа Юникода в значение типа Decimal.Defines an implicit conversion of a Unicode character to a Decimal.

Implicit(UInt64 to Decimal) Implicit(UInt64 to Decimal) Implicit(UInt64 to Decimal) Implicit(UInt64 to Decimal)

Определяет неявное преобразование 64-разрядного целого числа без знака в значение типа Decimal.Defines an implicit conversion of a 64-bit unsigned integer to a Decimal.

Этот интерфейс API CLS-несовместим.This API is not CLS-compliant.

Implicit(Int32 to Decimal) Implicit(Int32 to Decimal) Implicit(Int32 to Decimal) Implicit(Int32 to Decimal)

Определяет неявное преобразование 32-разрядного целого числа со знаком в значение типа Decimal.Defines an implicit conversion of a 32-bit signed integer to a Decimal.

Increment(Decimal) Increment(Decimal) Increment(Decimal) Increment(Decimal)

Увеличивает операнд Decimal на 1.Increments the Decimal operand by 1.

Inequality(Decimal, Decimal) Inequality(Decimal, Decimal) Inequality(Decimal, Decimal) Inequality(Decimal, Decimal)

Возвращает значение, указывающее, имеют ли два объекта Decimal различные значения.Returns a value that indicates whether two Decimal objects have different values.

LessThan(Decimal, Decimal) LessThan(Decimal, Decimal) LessThan(Decimal, Decimal) LessThan(Decimal, Decimal)

Возвращает значение, позволяющее определить, действительно ли заданное значение типа Decimal меньше другого заданного значения типа Decimal.Returns a value indicating whether a specified Decimal is less than another specified Decimal.

LessThanOrEqual(Decimal, Decimal) LessThanOrEqual(Decimal, Decimal) LessThanOrEqual(Decimal, Decimal) LessThanOrEqual(Decimal, Decimal)

Возвращает значение, позволяющее определить, действительно ли заданное значение типа Decimal меньше или равно другому заданному значению типа Decimal.Returns a value indicating whether a specified Decimal is less than or equal to another specified Decimal.

Modulus(Decimal, Decimal) Modulus(Decimal, Decimal) Modulus(Decimal, Decimal) Modulus(Decimal, Decimal)

Возвращает остаток от деления двух заданных значений Decimal.Returns the remainder resulting from dividing two specified Decimal values.

Multiply(Decimal, Decimal) Multiply(Decimal, Decimal) Multiply(Decimal, Decimal) Multiply(Decimal, Decimal)

Умножает два заданных значения типа Decimal.Multiplies two specified Decimal values.

Subtraction(Decimal, Decimal) Subtraction(Decimal, Decimal) Subtraction(Decimal, Decimal) Subtraction(Decimal, Decimal)

Находит разность двух заданных значений типа Decimal.Subtracts two specified Decimal values.

UnaryNegation(Decimal) UnaryNegation(Decimal) UnaryNegation(Decimal) UnaryNegation(Decimal)

Делает отрицательным значение заданного операнда типа Decimal.Negates the value of the specified Decimal operand.

UnaryPlus(Decimal) UnaryPlus(Decimal) UnaryPlus(Decimal) UnaryPlus(Decimal)

Возвращает значение операнда Decimal (знак операнда при этом не меняется).Returns the value of the Decimal operand (the sign of the operand is unchanged).

Явные реализации интерфейса

IComparable.CompareTo(Object) IComparable.CompareTo(Object) IComparable.CompareTo(Object) IComparable.CompareTo(Object)
IConvertible.GetTypeCode() IConvertible.GetTypeCode() IConvertible.GetTypeCode() IConvertible.GetTypeCode()
IConvertible.ToBoolean(IFormatProvider) IConvertible.ToBoolean(IFormatProvider) IConvertible.ToBoolean(IFormatProvider) IConvertible.ToBoolean(IFormatProvider)

Описание этого члена см. в разделе ToBoolean(IFormatProvider).For a description of this member, see ToBoolean(IFormatProvider).

IConvertible.ToByte(IFormatProvider) IConvertible.ToByte(IFormatProvider) IConvertible.ToByte(IFormatProvider) IConvertible.ToByte(IFormatProvider)

Описание этого члена см. в разделе ToByte(IFormatProvider).For a description of this member, see ToByte(IFormatProvider).

IConvertible.ToChar(IFormatProvider) IConvertible.ToChar(IFormatProvider) IConvertible.ToChar(IFormatProvider) IConvertible.ToChar(IFormatProvider)

Данное преобразование не поддерживается.This conversion is not supported. При попытке использовать этот метод выбрасывается исключение InvalidCastException.Attempting to use this method throws an InvalidCastException.

IConvertible.ToDateTime(IFormatProvider) IConvertible.ToDateTime(IFormatProvider) IConvertible.ToDateTime(IFormatProvider) IConvertible.ToDateTime(IFormatProvider)

Данное преобразование не поддерживается.This conversion is not supported. При попытке использовать этот метод выбрасывается исключение InvalidCastException.Attempting to use this method throws an InvalidCastException.

IConvertible.ToDecimal(IFormatProvider) IConvertible.ToDecimal(IFormatProvider) IConvertible.ToDecimal(IFormatProvider) IConvertible.ToDecimal(IFormatProvider)

Описание этого члена см. в разделе ToDecimal(IFormatProvider).For a description of this member, see ToDecimal(IFormatProvider).

IConvertible.ToDouble(IFormatProvider) IConvertible.ToDouble(IFormatProvider) IConvertible.ToDouble(IFormatProvider) IConvertible.ToDouble(IFormatProvider)

Описание этого члена см. в разделе ToDouble(IFormatProvider).For a description of this member, see ToDouble(IFormatProvider).

IConvertible.ToInt16(IFormatProvider) IConvertible.ToInt16(IFormatProvider) IConvertible.ToInt16(IFormatProvider) IConvertible.ToInt16(IFormatProvider)

Описание этого члена см. в разделе ToInt16(IFormatProvider).For a description of this member, see ToInt16(IFormatProvider).

IConvertible.ToInt32(IFormatProvider) IConvertible.ToInt32(IFormatProvider) IConvertible.ToInt32(IFormatProvider) IConvertible.ToInt32(IFormatProvider)

Описание этого члена см. в разделе ToInt32(IFormatProvider).For a description of this member, see ToInt32(IFormatProvider).

IConvertible.ToInt64(IFormatProvider) IConvertible.ToInt64(IFormatProvider) IConvertible.ToInt64(IFormatProvider) IConvertible.ToInt64(IFormatProvider)

Описание этого члена см. в разделе ToInt64(IFormatProvider).For a description of this member, see ToInt64(IFormatProvider).

IConvertible.ToSByte(IFormatProvider) IConvertible.ToSByte(IFormatProvider) IConvertible.ToSByte(IFormatProvider) IConvertible.ToSByte(IFormatProvider)

Описание этого члена см. в разделе ToSByte(IFormatProvider).For a description of this member, see ToSByte(IFormatProvider).

IConvertible.ToSingle(IFormatProvider) IConvertible.ToSingle(IFormatProvider) IConvertible.ToSingle(IFormatProvider) IConvertible.ToSingle(IFormatProvider)

Описание этого члена см. в разделе ToSingle(IFormatProvider).For a description of this member, see ToSingle(IFormatProvider).

IConvertible.ToType(Type, IFormatProvider) IConvertible.ToType(Type, IFormatProvider) IConvertible.ToType(Type, IFormatProvider) IConvertible.ToType(Type, IFormatProvider)

Описание этого члена см. в разделе ToType(Type, IFormatProvider).For a description of this member, see ToType(Type, IFormatProvider).

IConvertible.ToUInt16(IFormatProvider) IConvertible.ToUInt16(IFormatProvider) IConvertible.ToUInt16(IFormatProvider) IConvertible.ToUInt16(IFormatProvider)

Описание этого члена см. в разделе ToUInt16(IFormatProvider).For a description of this member, see ToUInt16(IFormatProvider).

IConvertible.ToUInt32(IFormatProvider) IConvertible.ToUInt32(IFormatProvider) IConvertible.ToUInt32(IFormatProvider) IConvertible.ToUInt32(IFormatProvider)

Описание этого члена см. в разделе ToInt32(IFormatProvider).For a description of this member, see ToInt32(IFormatProvider).

IConvertible.ToUInt64(IFormatProvider) IConvertible.ToUInt64(IFormatProvider) IConvertible.ToUInt64(IFormatProvider) IConvertible.ToUInt64(IFormatProvider)

Описание этого члена см. в разделе ToInt64(IFormatProvider).For a description of this member, see ToInt64(IFormatProvider).

IDeserializationCallback.OnDeserialization(Object) IDeserializationCallback.OnDeserialization(Object) IDeserializationCallback.OnDeserialization(Object) IDeserializationCallback.OnDeserialization(Object)

Выполняется после завершения десериализации объекта.Runs when the deserialization of an object has been completed.

Применяется к

Потокобезопасность

Все члены этого типа являются потокобезопасными.All members of this type are thread safe. Члены, которые могут изменить состояние экземпляра, в действительности возвращают новый экземпляр, инициализированный новым значением.Members that appear to modify instance state actually return a new instance initialized with the new value. Как с любым другим типом, чтение и запись общей переменной, которая содержит экземпляр этого типа, должны быть защищены блокировкой для обеспечения потокобезопасности.As with any other type, reading and writing to a shared variable that contains an instance of this type must be protected by a lock to guarantee thread safety.

Дополнительно