Part 6 – C# Tutorial – Nullable Types

Suggested Videos
Part 3 – Built-in types
Part 4 – String type 
Part 5 – Operators

In this video, we will discuss
1. Nullable types in C#
2. Null Coalescing Operator ??

In C# types  are divided into 2 broad categories.
Value Types  – int, float, double, structs, enums etc
Reference Types – Interface, Class, delegates, arrays etc

By default value types are non nullable. To make them nullable use ?
int i = 0 (i is non nullable, so “i” cannot be set to null, i = null will generate compiler error)
int? j = 0 (j is nullable int, so j=null is legal)

Nullable types bridge the differences between C# types and Database types

Program without using NULL coalescing operator
using System;
class Program
{
static void Main()
{
int AvailableTickets;
int? TicketsOnSale = null;

if (TicketsOnSale == null)
{
AvailableTickets = 0;
}
else
{
AvailableTickets = (int)TicketsOnSale;
}

Console.WriteLine(“Available Tickets={0}”, AvailableTickets);
}
}

The above program is re-written using NULL coalescing operator
using System;
class Program
{
static void Main()
{
int AvailableTickets;
int? TicketsOnSale = null;

//Using null coalesce operator ??
AvailableTickets = TicketsOnSale ?? 0;

Console.WriteLine(“Available Tickets={0}”, AvailableTickets);
}
}

[youtube https://www.youtube.com/watch?v=HuLJbiqpIM0?rel=0&showinfo=0]

Comments

No comments yet. Why don’t you start the discussion?

Leave a Reply

Your email address will not be published. Required fields are marked *