Integral and Floating-Point Numeric Types 


Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Integral and Floating-Point Numeric Types



Some descriptions of standard numeric format specifiers refer to integral or floating-point numeric types. The integral numeric types are Byte, SByte, Int16, Int32, Int64, UInt16, UInt32, and UInt64. The floating-point numeric types are Decimal, Single, and Double.

Floating-Point Infinities and NaN

Note that regardless of the format string, if the value of a Single or Double floating-point type is positive infinity, negative infinity, or Not a Number (NaN), the formatted string is the value of the respective PositiveInfinitySymbol, NegativeInfinitySymbol, or NaNSymbol property specified by the currently applicable NumberFormatInfo object.


Примечания

Настройки панели управления

Параметры элемента панели управления Язык и региональные стандарты влияют на выходную строку, получаемую в результате операции форматирования. Эти параметры используются для инициализации объекта NumberFormatInfo, связанного с текущими языком и региональными параметрами потока, а текущие язык и региональные параметры потока предоставляют значения, которые используются для управления форматированием. Результирующие строки будут различаться на компьютерах с разными настройками.

Кроме того, если конструктор CultureInfo..::.CultureInfo(String) используется для создания нового объекта CultureInfo, представляющего региональные параметры, аналогичные текущим параметрам системы, то все настройки, установленные в элементе Язык и региональные параметры панели управления, будут применяться к новому объекту CultureInfo. Можно использовать метод CultureInfo..::.CreateSpecificCulture для создания CultureInfo, который не отражает настроек системы.

Свойства NumberFormatInfo

На форматирование влияют свойства текущего объекта NumberFormatInfo, который предоставляется неявно текущими языком и региональными параметрами текущего потока или явно параметром IFormatProvider метода, который вызывает форматирование. Укажите объект NumberFormatInfo или объект CultureInfo для этого параметра.

Целочисленные типы и типы с плавающей запятой

Некоторые описания спецификаторов стандартных числовых форматов относятся к целочисленным типам и типам с плавающей запятой. Целочисленными типами являются Byte, SByte, Int16, Int32, Int64, UInt16, UInt32 и UInt64. Числовыми типами с плавающей запятой являются Decimal, Single и Double.

Бесконечности действительных чисел с плавающей запятой и NaN

Обратите внимание, что независимо от строки формата, если значение типа с плавающей запятойSingle или Double является плюс бесконечностью, минус бесконечностью или не является числом (NaN), в отформатированной строке является значением соответствующим PositiveInfinitySymbol, NegativeInfinitySymbol, или свойству NaNSymbol, которые указаны в данный момент соответствующим объектом NumberFormatInfo.


Example

The following example formats an integral and a floating-point numeric value using the en-us culture and all the standard numeric format specifiers. This example uses two particular numeric types, but would yield similar results for any of the numeric base types (Byte, SByte, Int16, Int32, Int64, UInt16, UInt32, UInt64, Decimal, Single, and Double).

using System; using System.Globalization; using System.Threading;   public class NumericFormats { public static void Main() { // Display string representations of numbers for en-us culture CultureInfo ci = new CultureInfo("en-us"); // Output floating point values double floating = 10761.937554; Console.WriteLine("C: {0}", floating.ToString("C", ci)); // Displays "C: $10,761.94" Console.WriteLine("E: {0}", floating.ToString("E03", ci)); // Displays "E: 1.076E+004" Console.WriteLine("F: {0}", floating.ToString("F04", ci)); // Displays "F: 10761.9376" Console.WriteLine("G: {0}", floating.ToString("G", ci)); // Displays "G: 10761.937554" Console.WriteLine("N: {0}", floating.ToString("N03", ci)); // Displays "N: 10,761.938" Console.WriteLine("P: {0}", (floating/10000).ToString("P02", ci)); // Displays "P: 107.62 %" Console.WriteLine("R: {0}", floating.ToString("R", ci)); // Displays "R: 10761.937554" Console.WriteLine(); // Output integral values int integral = 8395; Console.WriteLine("C: {0}", integral.ToString("C", ci)); // Displays "C: $8,395.00" Console.WriteLine("D: {0}", integral.ToString("D6", ci)); // Displays D: 008395"" Console.WriteLine("E: {0}", integral.ToString("E03", ci)); // Displays "E: 8.395E+003" Console.WriteLine("F: {0}", integral.ToString("F01", ci)); // Displays "F: 8395.0" Console.WriteLine("G: {0}", integral.ToString("G", ci)); // Displays "G: 8395" Console.WriteLine("N: {0}", integral.ToString("N01", ci)); // Displays "N: 8,395.0" Console.WriteLine("P: {0}", (integral/10000).ToString("P02", ci)); // Displays "P: 83.95 %" Console.WriteLine("X: 0x{0}", integral.ToString("X", ci)); // Displays "X: 0x20CB" Console.WriteLine(); } }

Пример

В следующем примере целочисленное значение и числовое значение с плавающей запятой форматируются с помощью языка и региональных параметров en-us и всех спецификаторов стандартного числового формата. В этом примере используются два конкретных числовых типа, но схожие результаты будут получены и для любого из базовых числовых типов (Byte, SByte, Int16, Int32, Int64, UInt16, UInt32, UInt64, Decimal, Single и Double).

ß-----------



Поделиться:


Последнее изменение этой страницы: 2017-01-19; просмотров: 118; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.22.181.81 (0.006 с.)