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 значение состоит из входа разряда 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)), где-(296-1) равно MinValueи 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, Int16, Int32, Int64, Byte, UInt16, UInt32, и UInt64 значения.This 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 Тип также предоставляет методы, которые преобразуют Decimal значения в / из Single и Double значения.The 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 throw 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.

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