Exceptions and Defensive Coding
TryParse
TryParse-style methods report success or failure without throwing.
TryParse
TryParseExample.cs
using System;
class Program
{
static void Main()
{
string input = ;
bool parsed = int.TryParse(input, out int value);
string status = parsed ? "ok" : "fallback";
if (!parsed)
{
value = -1;
}
Console.WriteLine($"input={input}");
Console.WriteLine($"status={status}");
Console.WriteLine($"value={value}");
}
}
using System;
class Program
{
static void Main()
{
string input = ;
bool parsed = int.TryParse(input, out int value);
string status = parsed ? "ok" : "fallback";
if (!parsed)
{
value = -1;
}
Console.WriteLine($"input={input}");
Console.WriteLine($"status={status}");
Console.WriteLine($"value={value}");
}
}
using System;
class Program
{
static void Main()
{
string input = ;
bool parsed = int.TryParse(input, out int value);
string status = parsed ? "ok" : "fallback";
if (!parsed)
{
value = -1;
}
Console.WriteLine($"input={input}");
Console.WriteLine($"status={status}");
Console.WriteLine($"value={value}");
}
}
TryParse
`TryParse` returns a boolean and writes the parsed value through an out parameter.