前言:
在面对对象的动态开发中,难免会遇到各种类型转换的问题,今天我们来简单介绍一下enum(枚举)与int(整型)和string(字符串)类型之间的相互转换;
一.三者类型的简单介绍:
1.enum:枚举的声明用enum,枚举是值类型;详细介绍请前往:enum枚举的介绍
2.int:int是32位有符号的整型;
int i =100 ; Console.WriteLine(i);

3.string:是字符串类型,双引号中随便写,唯独写符号需要小心;
string i = "第一个字符串=43567dufcdj"; Console.WriteLine(i);

二.enum枚举转换为字符串类型:
在转化为字符串类型时主要用到enum_name.枚举值.Tostring(),也就是将当前对象转换为字符串样式;
举例:
enum Sss {
吃饭, 睡觉, 打豆豆, 打游戏, 看电影, 三国杀 } static void Main(string[] args) {
Console.WriteLine("这是将枚举转换为字符串: {0}", Sss.打游戏.ToString()); Console.ReadLine(); Console.WriteLine("这是将枚举转换为字符串: {0}", Sss.三国杀.ToString()); Console.ReadLine(); Console.WriteLine("这是将枚举转换为字符串: {0}", Sss.吃饭.ToString()); Console.ReadLine(); Console.WriteLine("这是将枚举转换为字符串: {0}", Sss.打豆豆 .ToString()); Console.ReadLine(); }
三.enum枚举转化为整型:
在转换为整形时一般用的是强制转化,会用到(int)enum_name.枚举值,也就是将当前对象转化为整型;
举例:
enum Sss {
吃饭, 睡觉, 打豆豆, 打游戏, 看电影, 三国杀 } static void Main(string[] args) {
Console.WriteLine("这是将枚举转换为整型: {0}", (int)Sss.吃饭); Console.ReadLine(); Console.WriteLine("这是将枚举转换为整型: {0}", (int)Sss.三国杀); Console.ReadLine(); Console.WriteLine("这是将枚举转换为整型: {0}", (int)Sss.打游戏); Console.ReadLine(); Console.WriteLine("这是将枚举转换为整型: {0}", (int)Sss.打豆豆); Console.ReadLine(); Console.WriteLine("这是将枚举转换为整型: {0}", (int)Sss.看电影); Console.ReadLine(); }
四.将整型转化为enum枚举:
1.第一种方法
在将整型转化为枚举时主要用到了:(enum_name)enum符号的值这个方法;
enum Sss {
吃饭, 睡觉, 打豆豆, 打游戏, 看电影, 三国杀 } static void Main(string[] args) {
Console.WriteLine("这是将整数转换为枚举: {0}", (Sss)1); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", (Sss)2); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", (Sss)3); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", (Sss)4); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", (Sss)5); Console.ReadLine(); }
代码中的1,2,3,4,5为枚举符号值,所以运行结果为:

2.第二种方法:
在这种方法中主要用到了:Enum.GetName(typeof(enum_name), enum符号值)这个方法,Enum.GetName()的意思就是:在制定的枚举中检索具有指定值的常熟的名称,括号里写的是枚举的名称以及枚举的符号值;
举例;
enum Sss {
吃饭, 睡觉, 打豆豆, 打游戏, 看电影, 三国杀 } static void Main(string[] args) {
Console.WriteLine("这是将整数转换为枚举: {0}", Enum.GetName(typeof(Sss), 1)); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", Enum.GetName(typeof(Sss), 2)); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", Enum.GetName(typeof(Sss), 3)); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", Enum.GetName(typeof(Sss), 4)); Console.ReadLine(); Console.WriteLine("这是将整数转换为枚举: {0}", Enum.GetName(typeof(Sss), 5)); Console.ReadLine(); }
和第一种方法一样,所以结果不想而知了吧:

但个人一般推荐第一种因为比较简单,哈哈哈
五.将字符串转化为enum枚举:
在其进行转化是首先肯定得定义一个string类型的量,然后通过(enum_name)Enum.Parse(typeof(enum_name), string_name)方法进行设置调用;
举例:
enum Sss {
cc, dd, bb, 打游戏, 看电影, 三国杀 } static void Main(string[] args) {
string str = ""; //Sss sss = (Sss)Enum.Parse(typeof(Sss),str); Console.WriteLine("这是将字符串转换为枚举: {0}", (Sss)Enum.Parse(typeof(Sss), str)); Console.ReadLine(); }
以上为本次博客全部内容,下次更新如何查看枚举具体转换的是什么类型,敬请期待!
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/176288.html原文链接:https://javaforall.net
