* При перепечатке материалов ссылка на www.SeoLiga.ru обязательна!
Типы данных .NET Framework
7 февраля 2009
Типы данных в .NET применяются для хранения различных данных. Все они отно- сятся к типам значения, их можно разбить на следующие категории: целочислен- ные типы, типы значений с плавающей точкой, типы булевых и символьных значе- ний. В этом разделе мы поговорим о них, а также обсудим два встроенных ссылоч- ных типа, без которых не обходится ни одно приложение, — String и Object. Целочисленные типы .NET Framework поддерживает целый набор целочисленных типов. Вместе с соот- ветствующими им типами из языков Visual Basic ,NET и Visual C#. Переменным целочисленного типа можно присваивать десятичные или шест- надцатеричные значения. Литералы, обозначающие шестнадцатеричные числа, следует предварять символами &Н (в Visual Basic .NET) либо Ох (в Visual C#), на- пример:
Visual Basic .NET Dim mylnteger as Integer mylriteger = &H32EF Visual C# int mylnteger; mylnteger = Ox32EF; Таблица 3-1. Целочисленные типы .NET Framework .NET System. Byte System.lMl6 System. Int32 System. Int64 System. S Byte System. UIntl6 System. UInt32 System. Ulnt64 Visual C# Byte Short III! long sbyte ushort uint ulong Visual Basic .NET Byte Short Integer Long нет нет нет нет Описание 8-разрядное целое число без знака 16-разрядное целое число со знаком 32-разрядное целое число со знаком 64-разрядное целое число со знаком 8-разрядное целое число со знаком 16-разрядное целое число без знака 32-разрядное целое число без знака 64-разрядное целое число без знака Диапазон значений 0-2:i5 -32768- 32767 _231--231-1 -263— 263— 1 -128-127 0-65535 0_2'12-1 0_2"4-1 Типы значений с плавающей точкой Для представления дробных чисел применяют три типа с плавающей точкой (таб- лица 3-2). Таблица 3-2. Типы .NET Framework, представляющие значения с плавающей точкой .NET Framework System. Single System. Double System. Decimal Visual C# float double decimal Visual Basic .NET Single Double Decimal Описание 32-разрядное число с плавающей точкой 64-разрядное число с плавающей точкой 128-разрядное число с плавающей точкой Точность 7 знача- щих цифр 15-16 значащих цифр 28 знача- щих цифр Примерный диапазон значений от+/-1,4хШ"45 до +/-3,4хЮ38 от +/-5,Ох1<Г334 ДО+/-1-Ы0308 от+/-1,Ох1(Г28 до +/-7,9хЮ28 Тип System.Single подходит для вычислений с плавающей точкой, не требующих высокой точности, поскольку он хранит значения с точностью до седьмого знака. Тип System.Double обеспечивает более высокую точность и позволяет оперировать большими числами. Тип System.Decimal разработан специально для финансовых расчетов и представляет значения со сверхвысокой точностью. Диапазон значений этого типа существенно уже по сравнению с System.Double, зато он намного точнее: позволяет хранить значения с точностью до 28 знака. Нечисловые типы В этом разделе пойдет речь о четырех типах, не представляющих числа: System. Boolean, System.Char, System.String и System.Object. System.Boolean Переменные, объявленные с типом System.Boolean, могут принимать значение «ис- тина» (true) либо «ложь» (false). В Visual Basic .NET ему соответствует тип Boolean, принимающий значения True или False, а в Visual C# — тип boot (со значениями true и false). System.Char Тип System.Char представляет отдельные символы в 16-разрядной кодировке Unicode. В Visual Basic .NET ему соответствует тип Char, а в Visual C# — char. Перемен- ной этого типа можно присвоить значение в виде литерала, состоящего из символа, заключенного в одинарные (Visual C#) или в двойные (в Visual Basic .NET) кавычки с суффиксом «с»: Visual Basic .NET Dim rnyChar As Char myChar = "W"c Visual C# char rnyChar; myChar = 'W ; Переменную этого типа можно инициализировать также числовым значением, представляющим код символа Unicode. В Visual Basic .NET это делается с помощью функции Сиг или ChrW, а в Visual C# код символа задают четырехзначным шест- надцатеричным числом с префиксом «\и», заключенным в одинарные кавычки: Visual Basic .NET Dim myChar As Char myChar = Chr(521) Visual C# char myChar; rnyChar = '\u01fe'; System. String Тип System.String — ссылочный, представляющий набор значений типа System.Char. Говоря повседневным языком, тип String способен представлять слова, абзацы, раз- делы — любые строки символов. В Visual Basic .NET ему соответствует тип String, a в Visual C# — string. Переменной этого типа можно присваивать значение в виде литерала, состоящего из строки, заключенной в двойные кавычки, например, так: Visual Basic .NET Dim myString As String myString = "This is a String! Wow!" Visual C# string myString; myString = "This is a String! Wow!"; У класса String много встроенных функций, о которых мы поговорим далее. System.Object Тип Object — предок всех типов .NET Framework. Любой тип, независимо от того, является ли он типом значения или ссылочным, происходит от System. Object. В Visual Basic .NET ему соответствует тип Object, а в Visual C# — object. В переменную этого типа можно записать любой объект или значение, например, так: Visual Basic .NET Dim myObject As Object rnyObject = 543 rnyObject = New System.Windows. Forms. Form() Visual C# object myObject; myObject = 543; myObject = new System.Windows.Forms.Form(); Чтобы получить доступ к встроенной функциональности объекта некоторого типа, сохраненного в переменной типа Object, необходимо явно привести ее к ис- ходному типу.