为什么输出结果不是1
enum orientation : byte{
north=1,
south=2,
east=3,
west=4
}
class Program
{
static void Main(string[] args)
{
orientation myDirection = orientation.north;
Console.WriteLine("myDirection={0}",myDirection);
Console.ReadKey();
}
}
--------------------编程问答-------------------- myDirection的类型是枚举 --------------------编程问答-------------------- 这是神马? --------------------编程问答-------------------- Console.WriteLine("myDirection={0}",myDirection);
最符合这个的重载是 WriteLine(string s, object o);
object的ToString是输出Type Name。
所以
最起码的你把myDirection给ToString一下吧。 --------------------编程问答--------------------
唔 我好像说的有点问题。 --------------------编程问答--------------------
这句话是对的。
至于
object的ToString是输出Type Name。
当我没说,因为这里不是因为这个。 --------------------编程问答-------------------- ((char)myDirection.north).ToString() --------------------编程问答-------------------- 如果你想输出1,enum orientation : int定义为int好啦
--------------------编程问答-------------------- Console.WriteLine("myDirection={0}", (int) myDirection); --------------------编程问答-------------------- Console.WriteLine("myDirection={0}", ((int)myDirection).ToString());
--------------------编程问答-------------------- 要想输出1的话把你这句改一下
Console.WriteLine("myDirection={0}",((byte)myDirection).ToString());
--------------------编程问答-------------------- Console.WriteLine("myDirection={0}", (int)myDirection);
--------------------编程问答-------------------- --------------------编程问答-------------------- Console.WriteLine("myDirection={0}",myDirection.ToString()); --------------------编程问答-------------------- class Program
{
static void Main(string[] args)
{
//orientation myDirection = orientation.north;
orientation myDirection = orientation.north;
Console.WriteLine("myDirection={0}", (int)myDirection);
Console.ReadKey();
}
enum orientation : byte
{
north = 1,
south = 2,
east = 3,
west = 4
}
}这样运行出来得到的是mydirection=1;
补充:.NET技术 , C#