20. 字符串的转换

类型转换(一):

  当小容量的类型(低精度的数据类型)存储到大容量的类型(高精度的数据类型)中时,可以自动转换即“隐式转换”;当大容量的类型存储到小容量的类型时,则无法自动转换需要强制转换即“显式转换”。

  隐式转换:系统自动转换;

  显式转换:需要调用方法。

1             //例1:  
2             char mychar = 'c';
3             int myint = 97;
4             //myint = mychar;                   //小容量的char类型可以自动转换到容量比他大的int类型中(隐式)
5             //Console.WriteLine(myint);
6 
7             mychar = (char)myint;               //显式转换之方法一。检查溢出的方法:mychar=checked((char)myint);
8             Console.WriteLine(mychar);

类型转换(二): 

   (int);Convert.ToInt32()int.Parse();int.TryParse() 的区别。Convert.ToInt32() 使用的类型最为广泛。

1、(int)
  方法一:不会进行四舍五入,直接舍去小数。此方法不适合用于将 string 转换为 int,只能转换数值类型为 int,反过来也是只能转换数值类型而不能转换引用类型;
2、Convert.ToInt32()
  方法二:他会将空值 null 转换为 0。该方法转换的数值小数点位数为 1-4 时直接舍去;6-9 时进位;当小数点为 5 时,则返回一个临近的偶数;
  转为float类型写法为:Convert.ToSingle()
3、int.Parse()
  方法三:方法不能转换空值,而且只能将 string 转换为数值int/float/double等)类型,不能实现其他类型的转换,其他引用类型也不能转换;
4、int.TryParse()
  方法四:是一种较为安全的转换方法,也是只能将 string 转换为数值(int/float/double等)类型。

 1             //例1:  
 2             string mystr = "456";            
 3             double mydb = 24.4;
 4             int intResut;
 5 
 6             //(int)方法一:不会进行四舍五入,直接舍去小数
 7             intResut = (int)mydb;             
 8 
 9             //Conver.ToInt32();方法二: 他会将空值 null 转换为0
10             intResut = Convert.ToInt32(mydb);
11             Console.WriteLine(intResut);
12 
13             //int.Parse();
14             intResut = int.Parse(mystr);
15             Console.WriteLine(intResut);
16             Console.ReadKey();

 

 1         例2:int.TryParse()转换
 2         static void Main(string[] args)
 3         {
 4             string mystr = "520";
 5             int intResultNum = 0;                           //输出参数
 6             //int.TryParse()是一种较为安全的转换方法
 7             //意思是将字符串“mystr”转换为“int”型输出到“intResultNum”,并判断真假
 8             bool booResult = int.TryParse(mystr, out intResultNum);
 9             Console.WriteLine("是否可以转换:{0};转换的值为:{1}", booResult, intResultNum);
10             Console.ReadKey();
11         }

 

posted @ 2017-10-05 17:53  LiuChangwei  阅读(297)  评论(0编辑  收藏  举报