黑马程序员技术交流社区
标题:
c# 求助
[打印本页]
作者:
Tayirjan
时间:
2015-1-22 19:26
标题:
c# 求助
enum Gender
{
男=1,
女=2
}
static void Main(string[] args)
{
//Console.WriteLine(Gender.男);
Console.Write("请输入你的性别:");
Gender sex = Gender.男;
string str = Console.ReadLine();
try
{
sex = (Gender)Enum.Parse(typeof(Gender), str);
Console.WriteLine("你输入的性别是:{0}", sex);
}
catch (Exception ex)
{
Console.WriteLine(ex.Message);
}
Console.ReadKey();
}
这段程序 输入其他字母都报错,什么输入数字没报错!!
作者:
多多米
时间:
2015-1-22 20:17
这段程序 输入其他字母都报错,什么输入数字没报错!! 什么意思?
作者:
Tayirjan
时间:
2015-1-23 10:31
多多米 发表于 2015-1-22 20:17
这段程序 输入其他字母都报错,什么输入数字没报错!! 什么意思?
sex = (Gender)Enum.Parse(typeof(Gender), str);
按道理说如果用户输入的不是"男,女"应该报错,因为Gender里就有"男"和"女"运行时我输入了"男性","女性","..." 都报错了,这是准确的,但是我输入了一些数字,"456","445"还是没有报错,运行结果为:你的性别为:"456"等等!
作者:
226362149
时间:
2015-2-3 21:26
本帖最后由 226362149 于 2015-2-3 21:55 编辑
这个我用IF判断掉了。用户输入的不是数字1、2就报错。因为这里转换本身要求用户输入纯数字的字符串。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/)
黑马程序员IT技术论坛 X3.2