当前位置:编程学习 > C#/ASP.NET >>

为什么输出结果不是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一下吧。 --------------------编程问答--------------------
引用 3 楼 sunzongbao2007 的回复:
Console.WriteLine("myDirection={0}",myDirection);
最符合这个的重载是 WriteLine(string s, object o);
object的ToString是输出Type Name。

所以
最起码的你把myDirection给ToString一下吧。


唔 我好像说的有点问题。 --------------------编程问答--------------------
引用 4 楼 sunzongbao2007 的回复:
所以
最起码的你把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#
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,