Thursday, January 24, 2013

Difference between Int32.Parse(), Convert.ToInt32() and Int32.TryParse()

Int32.Parse()


Int32.Parse (string s) method converts the string representation of a number to its 32-bit signed integer equivalent. When s is a null reference, it will throw ArgumentNullException. If s is other than integer value, it will throw FormatException. When s represents a number less than MinValue or greater than MaxValue, it will throw OverflowException.

string s1 = "1234";
string s2 = "manish";
string s3 = null;
string s4 = "123456789123456789123456789123456789123456789";
int result;
result = Int32.Parse(s1); //-- 1234
result = Int32.Parse(s2); //-- FormatException
result = Int32.Parse(s3); //-- ArgumentNullException
result = Int32.Parse(s4); //-- OverflowException

 

Int32.TryParse()


Int32.TryParse(string s, out int result) method converts the specified string representation of 32-bit signed integer equivalent to out variable, and returns true if it is parsed successfully, false otherwise. When s is a null reference, it will return 0 rather than throw ArgumentNullException. If s is other than an integer value, the out variable will have 0 rather than FormatException. When s represents a number less than MinValue or greater than MaxValue, the out variable will have 0 rather than OverflowException
 
string s1 = "1234";
 string s2 = "manish";
 string s3 = null;
 string s4 = "123456789123456789123456789123456789123456789";
 int result;
 bool success;
 success = Int32.TryParse(s1, out result); //-- success => true; result => 1234
 success = Int32.TryParse(s2, out result); //-- success => false; result => 0
 success = Int32.TryParse(s3, out result); //-- success => false; result => 0
 success = Int32.TryParse(s4, out result); //-- success => false; result => 0

 

Convert.ToInt32()


Convert.ToInt32(string s) method converts the specified string representation of 32-bit signed integer equivalent. This calls in turn Int32.Parse () method. When s is a null reference, it will return 0 rather than throw ArgumentNullException. If s is other than integer value, it will throw FormatException. When s represents a number less than MinValue or greater than MaxValue, it will throw OverflowException.
 
string s1 = "1234";
string s2 = "manish";
string s3 = null;
string s4 = "123456789123456789123456789123456789123456789";
int result;
result = Convert.ToInt32(s1); //-- 1234
result = Convert.ToInt32(s2); //-- FormatException
result = Convert.ToInt32(s3); //-- 0
result = Convert.ToInt32(s4); //-- OverflowException
kick it on DotNetKicks.com

No comments:

Post a Comment

^ Scroll to Top