C#数据类型相互转换

C#数据类型:

1.enum<-->int:    枚举类型默认可以跟int类型互相转换,枚举类型跟int类型是兼容的,枚举默认int值是0: 强制类型转换;

           注意:当转换一个枚举中没有的值时,不会抛出异常,而直接将数字显示出来。

 1             int a=3;
 2             string str = "";
 3             Person ps = new Person();
 4             //int<-->enum:可相互转换:强制类型
 5             //enum默认int值为0;
 6             ps = (Person)a;
 7             Console.WriteLine("int-->enum: {0}", ps);
 8             //当转换一个枚举中没有的值时,不会抛出异常,而直接将数字显示出来。
 9             a = (int)Person.女;
10             Console.WriteLine("enum-->int: {0}", a);    

 

2.enum<-->string:

3.int<-->string:

所有类型都可以转换成string类型:  .ToString();   

        字符串转换为枚举类型:(要转换的枚举类型)enum.Parse(typeof(要转换的枚举类型),"要转换的字符串") ;
        如果转换的字符串是数字,则就算枚举中没有,不会抛出异常;
        如果转换的字符串是文本,如果枚举中没有,则会抛出异常。
        字符串转换为int类型: Convert.ToInt32()、int.Parse()、int.TryParse()

 1             //枚举类型转换为string类型
 2             //任何数据类型都可以转换为string类型:     .ToString()
 3             str = ps.ToString();
 4             Console.WriteLine("enum-->string: {0}", ps);
 5             //string类型转换为enum类型:      
 6             //(枚举名称)Enum.Parse(typeof(枚举名 称),string变量);
 7             str = "31";
 8             ps = (Person)Enum.Parse(typeof(Person), str);
 9             a = Convert.ToInt32(ps);
10             Console.WriteLine("string-->enum: {0}", ps);
11             Console.WriteLine("string-->int: {0}", a);
12             Console.ReadKey();        

 

C#数据类型相互转换

上一篇:C# this和base的使用


下一篇:win8 iis安装及网站发布(转)