public static void Main()
string format = "{0, -49} {1, -15}";
object[] values = { 16.33, -24, 0, "12", "12.7", String.Empty,
"1String", "True", "false", null,
new System.Collections.ArrayList() };
Console.WriteLine(format, "Object", "ToBoolean");
Console.WriteLine(format, "------", "---------");
foreach(var val in values)
Console.Write("{0,-50}", val != null ? String.Format("{0} ({1})", val, val.GetType().Name) : "null");
Console.WriteLine("{0}", val.ToBoolean());
Console.WriteLine("Bad Format");
catch (InvalidCastException)
Console.WriteLine("No Conversion");