枚举转化与判断
2006-12-29 09:15
246 查看
定义枚举:
public enum DisplayType
{
All=10,
Up=20,
Down=30
}
1.数值转化
(1)字符转化为枚举
string str="up";
DisplayType displayType;
displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),str,true);
Response.Write(displayType.ToString());
结果是:Up
Enum.Parse 方法第3个参数,如果为 true,则忽略大小写;否则考虑大小写。
(2)数字转化为枚举
int i=30;
DisplayType displayType;
displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),i.ToString());
Response.Write(displayType.ToString());
结果是:Down
(3)枚举转化为字符
DisplayType displayType=DisplayType.Down;
string str=displayType.ToString();
Response.Write(str);
结果是:Down
(4)枚举转化为数字
方法一:
DisplayType displayType=DisplayType.Down;
int i=Convert.ToInt32(displayType.ToString("d"));
Response.Write(i.ToString());
或者:(int)Enum.Parse(typrof(DisplayType),"Down")
结果是:30
方法二:
DisplayType displayType=DisplayType.Down;
int i=((IConvertible)((System.Enum)displayType)).ToInt32(null);
Response.Write(i.ToString());
结果是:30
枚举的父类是System.Enum,父类继承了接口IConvertible
2.数值判断
有时候枚举数值由外界输入,这时候我们就得判断输入数值的正确性了.
(1)字符判断
方法一:
string str="u";
if(Enum.IsDefined(typeof(DisplayType),str))
{
Response.Write("ok");
}
else
{
Response.Write("error");
}
结果是:error
方法二:
string str="Up";
try
{
Enum.Parse(typeof(DisplayType),str);
Response.Write("ok");
}
catch(ArgumentException)
{
Response.Write("error");
}
结果是:ok
Enum.Parse 方法的第2个参数,value 为空字符串或只包含空白或value 是一个名称,但不是为该枚举定义的已命名常数之一就发生异常
(2)数字判断
int i=30;
if(Enum.IsDefined(typeof(DisplayType),i))
{
Response.Write("ok");
}
else
{
Response.Write("error");
}
结果是:ok
public enum DisplayType
{
All=10,
Up=20,
Down=30
}
1.数值转化
(1)字符转化为枚举
string str="up";
DisplayType displayType;
displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),str,true);
Response.Write(displayType.ToString());
结果是:Up
Enum.Parse 方法第3个参数,如果为 true,则忽略大小写;否则考虑大小写。
(2)数字转化为枚举
int i=30;
DisplayType displayType;
displayType=(DisplayType)System.Enum.Parse(typeof(DisplayType),i.ToString());
Response.Write(displayType.ToString());
结果是:Down
(3)枚举转化为字符
DisplayType displayType=DisplayType.Down;
string str=displayType.ToString();
Response.Write(str);
结果是:Down
(4)枚举转化为数字
方法一:
DisplayType displayType=DisplayType.Down;
int i=Convert.ToInt32(displayType.ToString("d"));
Response.Write(i.ToString());
或者:(int)Enum.Parse(typrof(DisplayType),"Down")
结果是:30
方法二:
DisplayType displayType=DisplayType.Down;
int i=((IConvertible)((System.Enum)displayType)).ToInt32(null);
Response.Write(i.ToString());
结果是:30
枚举的父类是System.Enum,父类继承了接口IConvertible
2.数值判断
有时候枚举数值由外界输入,这时候我们就得判断输入数值的正确性了.
(1)字符判断
方法一:
string str="u";
if(Enum.IsDefined(typeof(DisplayType),str))
{
Response.Write("ok");
}
else
{
Response.Write("error");
}
结果是:error
方法二:
string str="Up";
try
{
Enum.Parse(typeof(DisplayType),str);
Response.Write("ok");
}
catch(ArgumentException)
{
Response.Write("error");
}
结果是:ok
Enum.Parse 方法的第2个参数,value 为空字符串或只包含空白或value 是一个名称,但不是为该枚举定义的已命名常数之一就发生异常
(2)数字判断
int i=30;
if(Enum.IsDefined(typeof(DisplayType),i))
{
Response.Write("ok");
}
else
{
Response.Write("error");
}
结果是:ok
相关文章推荐
- 枚举转化和判断方法的总结
- 枚举转化和判断方法
- 枚举转化和判断方法的总结
- 枚举转化和判断方法
- java判断string 能否转换成 date ,并将字符串转化为日期
- NSString的各种用法总结(创建、截取、判断比较、转化数据类型、拼接、替换、添加、追加、读取、写入、删去、改变)
- 枚举方式 Case of 判断英文字符串
- C# 判断字符串是否可以转化为数字
- C#中判断字符串中是否有汉字及将汉字转化为字母缩写
- POJ3189二分最大流(枚举下界,二分宽度,最大流判断可行性)
- 拨号、断网、枚举连接名称,判断是否在线、连接方式。
- POJ 3304 Segments [枚举+叉乘判断线段相交]【计算几何】
- POJ 2739 Sum of Consecutive Prime Numbers 暴力枚举+素数判断
- USACO:Palindromic Squares;回文判断+进制转化
- 枚举转化(小技巧)
- poj 3189 Steady Cow Assignment 【最大流】【枚举上下界 判断是否满流】
- POJ 2653 Pick-up sticks 枚举 + 判断两线段规范相交
- python(2)把ip转化为整数,并且进行判断
- POJ 3304 Segments 枚举线段端点+判断相交
- C# 判断字符串是否可以转化为数字