Урок 3. Значения по умолчанию

Для получения значений по умолчанию для каждого типа можно воспользоваться оператором default которому передать сам тип.

Ниже приведён код получения значений по умолчанию для разных типов и результат его выполнения.

using System;

namespace DefaultValues
{
    class Program
    {
        static void Main()
        {
            byte a = default(byte);
            sbyte b = default(sbyte);
            short c = default(short);
            ushort d = default(ushort);
            int e = default(int);
            uint f = default(uint);
            long g = default(long);
            ulong p = default(ulong);

            float k = default(float);
            double m = default(double);

            decimal q = default(decimal);

            bool n = default(bool);

            char z = default(char);

            string s = default(string);

            object w = default(object);

            Console.WriteLine("Значения по умолчанию для целочисельных типов:");
            Console.WriteLine("byte: {0}", a);
            Console.WriteLine("sbyte: {0}", b);
            Console.WriteLine("short: {0}", c);
            Console.WriteLine("ushort: {0}", d);
            Console.WriteLine("int: {0}", e);
            Console.WriteLine("uint: {0}", f);
            Console.WriteLine("long: {0}", g);
            Console.WriteLine("ulong: {0}", p);

            Console.WriteLine();

            Console.WriteLine("Значения по умолчанию для вещественных типов:");
            Console.WriteLine("float: {0}", k);
            Console.WriteLine("double: {0}", m);

            Console.WriteLine();

            Console.WriteLine("Значением по умолчанию для типа decimal: {0}", q);
            Console.WriteLine("Значением по умолчанию для типа bool: {0}", n);
            Console.WriteLine("Значением по умолчанию для типа char: {0}", z);

            Console.WriteLine();

            // поскольку типы string и object являются ссылочными типами (class), то их значениями по умоланию должно быть null
            // null – указывает, что переменная не ссылается ни на один объект в памяти
            // проверка на null: s == null ? "null" : s
            Console.WriteLine("Значением по умолчанию для типа string: {0}", s == null ? "null" : s);
            Console.WriteLine("Значением по умолчанию для типа object: {0}", w == null ? "null" : w);

            // Задержка.
            Console.ReadKey();
        }
    }
}

6

%D1%81%D1%82%D1%80%D0%B5%D0%BB%D0%BA%D0%B0%20%D0%B2%D0%BB%D0%B5%D0%B2%D0%BE%202 предыдущая статья | следующая статья %D1%81%D1%82%D1%80%D0%B5%D0%BB%D0%BA%D0%B0%20%D0%B2%D0%BF%D1%80%D0%B0%D0%B2%D0%BE%202