Герберт Шилдт - C# 4.0: полное руководство
- Название:C# 4.0: полное руководство
- Автор:
- Жанр:
- Издательство:ООО И.Д. Вильямс
- Год:2011
- Город:Москва -- Киев
- ISBN:978-5-8459-1684-6
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Герберт Шилдт - C# 4.0: полное руководство краткое содержание
В этом полном руководстве по C# 4.0 - языку программирования, разработанному специально для среды .NET, - детально рассмотрены все основные средства языка: типы данных, операторы, управляющие операторы, классы, интерфейсы, методы, делегаты, индексаторы, события, указатели, обобщения, коллекции, основные библиотеки классов, средства многопоточного программирования и директивы препроцессора. Подробно описаны новые возможности C#, в том числе PLINQ, библиотека TPL, динамический тип данных, а также именованные и необязательные аргументы. Это справочное пособие снабжено массой полезных советов авторитетного автора и сотнями примеров программ с комментариями, благодаря которым они становятся понятными любому читателю независимо от уровня его подготовки.
Книга рассчитана на широкий круг читателей, интересующихся программированием на C#.Введите сюда краткую аннотацию
C# 4.0: полное руководство - читать онлайн бесплатно ознакомительный отрывок
Интервал:
Закладка:
// Продемонстрировать применение делегата Action.
using System;
class MyClass {
public int i;
public MyClass(int x) {
i = x;
}
}
class ActionDemo {
// Метод делегата Action, отображающий значение, которое ему передается,
static void Show(MyClass о) {
Console.Write(о.i + " ");
}
// Еще один метод делегата Action, делающий
// отрицательным значение, которое ему передается.
static void Neg(MyClass o) {
o.i = -o.i;
}
static void Main() {
MyClass[] nums = new MyClass[5];
nums[0] = new MyClass(5);
nums[1] = new MyClass(2);
nums[2] = new MyClass(3);
nums[3] = new MyClass(4);
nums[4] = new MyClass(1);
Console.Write("Содержимое массива nums: ");
// Выполнить действие для отображения значений.
Array.ForEach(nums, ActionDemo.Show);
Console.WriteLine();
// Выполнить действие для отрицания значений.
Array.ForEach(nums, ActionDemo.Neg);
Console.Write("Содержимое массива nums после отрицания: ");
// Выполнить действие для повторного отображения значений.
Array.ForEach(nums, ActionDemo.Show);
}
}
Ниже приведен результат выполнения этой программы.
Содержимое массива nums: 5 2 3 4 1
Содержимое массива nums после отрицания: -5 -2 -3 -4 -1
Класс BitConverter
В программировании нередко требуется преобразовать встроенный тип данных в массив байтов. Допустим, что на некоторое устройство требуется отправить целое значение, но сделать это нужно отдельными байтами, передаваемыми по очереди. Часто возникает и обратная ситуация, когда данные получаются из устройства в виде упорядоченной последовательности байтов, которые требуется преобразовать в один из встроенных типов. Для подобных преобразований в среде .NET предусмотрен отдельный класс BitConverter
.
Класс BitConverter
является статическим. Он содержит методы, приведенные в табл. 21.13. Кроме того, в нем определено следующее поле.
public static readonly bool IsLittleEndian
Это поле принимает логическое значение true
, если в текущей среде сначала сохраняется младший байт слова, а затем старший. Это так называемый формат с прямым порядком байтов. А если в текущей среде сначала сохраняется старший байт слова, а затем младший, то поле IsLittleEndian
принимает логическое значение false
. Это так называемый формат с обратным порядком байтов. В компьютерах с процессором Intel Pentium используется формат с прямым порядком байтов.
Таблица 21.13. Методы, определенные в классе BitConverter
Метод - Назначение
public static long DoubleToInt64Bits (double value) - Преобразует значение value в целочисленное значение типа long и возвращает результат
public static byte[] GetBytes (bool value) - Преобразует значение value в однобайтовый массив и возвращает результат
public static byte[] GetBytes (char value) - Преобразует значение value в двухбайтовый массив и возвращает результат
public static byte[] GetBytes (double value) - Преобразует значение value в восьмибайтовый массив и возвращает результат
public static byte[] GetBytes (float value) - Преобразует значение value в четырехбайтовый массив и возвращает результат
public static byte[] GetBytes (int value) - Преобразует значение value в четырехбайтовый массив и возвращает результат
public static byte[] GetBytes (long value) - Преобразует значение value в восьмибайтовый массив и возвращает результат
public static byte[] GetBytes (short value) - Преобразует значение value в двухбайтовый массив и возвращает результат
public static byte[] GetBytes (uint value) - Преобразует значение value в четырехбайтовый массив и возвращает результат
public static byte[] GetBytes (ulong value) - Преобразует значение value в восьмибайтовый массив и возвращает результат
public static byte[] GetBytes(ushort value) - Преобразует значение value в двухбайтовый массив и возвращает результат
public static double Int64BitsToDouble(long value) - Преобразует значение value в значение типа doubleи возвращает результат
public static bool ToBoolean(byte[] value, int startlndex) - Преобразует байт из элемента массива, указываемого по индексу value [startlndex] , в эквивалентное значение типа boolи возвращает результат. Ненулевое значение преобразуется в логическое значение true,а нулевое — в логическое значение false
public static char ToChar(byte[] value , int index) - Преобразует два байта, начиная с элемента массива value [ index] , в эквивалентное значение типа charи возвращает результат
public static double - ToDouble(byte[] value, int startlndex) - Преобразует восемь байтов, начиная с элемента массива value [startlndex] , в эквивалентное значение типа doubleи возвращает результат
public static short Tolntl6(byte[] value, int startlndex) - Преобразует два байта, начиная с элемента массива value [startlndex] , в эквивалентное значение типа shortи возвращает результат
public static int ToInt32(byte[] value, int startlndex) - Преобразует четыре байта, начиная с элемента массива value [startlndex] , в эквивалентное значение типа intи возвращает результат
public static long ToInt64(byte[] value, int startlndex) - Преобразует восемь байтов, начиная с элемента массива value [startlndex] , в эквивалентное значение типа longи возвращает результат
public static float ToSingle(byte[] value, int startlndex) - Преобразует четыре байта, начиная с элемента массива value [startlndex] , в эквивалентное значение типа floatи возвращает результат
public static string ToString(byte[] value) - Преобразует байты из массива value в символьную строку. Строка содержит шестнадцатеричные значения, связанные с этими байтами и разделенные дефисами
public static string ToString(byte[] value , int startlndex) - Преобразует байты из массива value в символьную строку, начиная с элемента value[startindex] . Строка содержит шестнадцатеричные значения, связанные с этими байтами и разделенные дефисами
public static string ToString(byte[] value, int startlndex, int length) - Преобразует байты из массива value в символьную строку, начиная с элемента value [ startlndex] и включая число элементов, определяемых параметром length. Строка содержит шестнадцатеричные значения, связанные с этими байтами и разделенные дефисами
Читать дальшеИнтервал:
Закладка: