u3d enum string int的互相转换

Enum为枚举提供基类,其基础类型可以是除 Char 外的任何整型。如果没有显式声明基础类型,则使用 Int32。编程语言通常提供语法来声明由一组已命名的常数和它们的值组成的枚举。

注意:枚举类型的基类型是除 Char 外的任何整型,所以枚举类型的值是整型值。

Enum 提供一些实用的静态方法:

(1)比较枚举类的实例的方法

(2)将实例的值转换为其字符串表示形式的方法

(3)将数字的字符串表示形式转换为此类的实例的方法

(4)创建指定枚举和值的实例的方法。

举例:enum Colors { Red, Green, Blue, Yellow };

Enum–>String

(1)利用Object.ToString()方法:如Colors.Green.ToString()的值是”Green”字符串;

(2)利用Enum的静态方法GetName与GetNames:

public static string GetName(Type enumType,Object value);

public static string[] GetNames(Type enumType);

例如:Enum.GetName(typeof(Colors),3))与Enum.GetName(typeof(Colors), Colors.Blue))的值都是”Blue”

Enum.GetNames(typeof(Colors))将返回枚举字符串数组。

String–>Enum

(1)利用Enum的静态方法Parse:

public static Object Parse(Type enumType,string value)

例如:

(Colors)System.Enum.Parse(typeof(Colors), "Red");

Enum–>Int

(1)因为枚举的基类型是除 Char 外的整型,所以可以进行强制转换。

例如:

(int)Colors.Red, (byte)Colors.Green;这里写代码片

Int–>Enum

(1)可以强制转换将整型转换成枚举类型。

例如:

Colors color = (Colors)2; //,那么color即为Colors.Blue

(2)利用Enum的静态方法ToObject。

public static Object ToObject(Type enumType,int value)

例如:

Colors color = (Colors)System.Enum.ToObject(typeof(Colors), 2);//,那么color即为Colors.Blue

判断某个整型是否定义在枚举中的方法:Enum.IsDefined

public static bool IsDefined(Type enumType,Object value)

例如:

System.Enum.IsDefined(typeof(Colors), n));
时间: 2024-08-29 01:45:14

u3d enum string int的互相转换的相关文章

Go time.Time string int各种格式转换

太短小在这里备份 1. time.Time to string format string : "2006-01-02 15:04:05.999999999 -0700 MST" t.Format("2006-01-02") 2. time format string to int time.Parse("2006-01-02", input) 3. yyyy-mm-dd string to yyyymmdd string strings.Rep

总是容易忘记:enum、int、string之间的快速转换

public enum Color { Red=1, Green=2 } (1)Enum转换为String Color.Read.ToString() Convert.ToString(Color.Green) (2)Enum转换为int Convert.ToInt32(Color.Green) (a)String转换为Enum (Color)Enum.Parse(typeof(Color), "Red"); (b)Int转换为Num (Color)1 原文地址:https://www

枚举和int,string类型之间的转换

public enum QQState    {        OnLine=1,        OffLine,        Leave,        Busy,        QMe    } 枚举转int: QQState state = QQState.OnLine;            //枚举类型默认可以跟int类型互相转换  枚举类型跟int类型是兼容的            int n = (int)state;            Console.WriteLine(n

JAVA enum与int的转换——转载

转自:http://blog.csdn.net/liranke/article/details/22751453 作者:langya2007 对于: enum Color { RED,BLUE,BLACK YELLOW,GREEN}; (1)  ordinal()方法: 返回枚举值在枚举类种的顺序.这个顺序根据枚举值声明的顺序而定.                   Color.RED.ordinal();  //返回结果:0                 Color.BLUE.ordina

java 13-4 Integer和String、int之间的转换,进制转换

1.int类型和String类型的相互转换 A.int -- String 推荐用: public static String valueOf(int i) 返回 int 参数的字符串表示形式. B.String -- int 推荐用: public static int parseInt(String s) 将字符串参数作为有符号的十进制整数进行解析 1 public class IntegerDemo { 2 public static void main(String[] args) {

Java不同类型字符转换String/int/Float/////

1.int & String int i=5678;String s=""; int->String: s=i+"";或 s=String.valueOf(i); String->int: i=Integer.parseInt(s);或 i=Integer.valueOf(s).intValue(); 2.String & Float String s="";Float f=12.21; String->Floa

类型转换 - CString,int,string,char*之间的转换

<C++标准函数库>中说的 有三个函数可以将字符串的内容转换为字符数组和C—string 1.data(),返回没有”\0“的字符串数组 2,c_str(),返回有”\0“的字符串数组 3,copy() ................................................................. int 转 CString: CString.Format("%d",int); ..............................

int ,Intege,String 三者之间的转换

注:如果使用JDK5.0的话,JVM会自动完成装包解包的. 1.Integer转换成int的方法 Integer i = new Integer(10); int k = i.intValue();即Integer.intValue(); 2.int转换成Integer int i = 10; Integer it = new Integer(i); 3.String转换成int的方法 String str = "10";  Integer it = new Interger(str)

VC CString,int,string,char*之间的转换

1 CString,int,string,char*之间的转换 string 转 CString CString.format("%s", string.c_str()); char 转 CString CString.format("%s", char*); char 转 string string s(char *); string 转 char * char *p = string.c_str(); CString 转 string string s(CStr