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

枚举的问题(憋了1星期!)

数组的问题憋了我5天
枚举的问题竟然憋了我1星期了,而且也没憋出来什么东西!
我想问问大家,你们一开始都是怎么学习VB.NET的
也是自己憋出来的吗?
我现在真是没招了,看MSDN ,在CSDN里搜索,在摆渡上搜索,
但是举的例子10个有8个都是:
private enum weekdays
monday = 0
tuesday = 1
..........................
.........................
但是我真的是看不懂,就算我脑子笨
我在这里恳求大家,能否说一下大家自己在最初学习的时候都是怎么过来的!
曾经遇到问题都是怎么解决的?
是不是:现在不明白,接触的多了就明白,
还是:现在不明白,会影响以后的学习?
反正一句话:大家能不能用最简单的语言,给我举了例子,让我明白;
什么是枚举?
如何使用?
什么时候要用?
比如:
private enum weekdays
monday = 0
tuesday = 1

monday后面我能不能不把他设置为0,而是设置为我想要的任何值?
这个课本里没讲!

还有,

看到有的人在定义了上面的枚举之后:
dim my as weekdays.monday
怎么monday 又成了一个属性?!!!!!!!!




最后,我诚心地恳求大家,给我解释一下吧? --------------------编程问答-------------------- 我的看法:
现在不明白,接触的多了就明白,

枚举就是用字符串代替没有任何意义的数字

private enum weekdays
monday = 0
tuesday = 1

这里monday=0可以改为任何值,只要你喜欢

--------------------编程问答-------------------- "枚举就是用字符串代替没有任何意义的数字
"
那什么是没有意义的数字呢?
上面的“字符串”指的是怎么字符串呢?
麻烦你了
--------------------编程问答-------------------- 字符串也可以是汉字啊,只要好记就行,达到枚举的目的

private enum weekdays
星期一=0
星期二=1
星期三=2
end enum

使用的时候 
aa=weekdays.星期一
weekdays.星期一也可以转为整型0 --------------------编程问答-------------------- 楼主是不是困惑于“为什么要用枚举,枚举是干嘛的,用在什么场合?”

至于什么是枚举,不用去准确的记它的定义,这不是邓小平理论。

楼主这样理解:

  就指南针而言,对于每一个指南针都有一个指针的方向,而这个方向取值范围只有四种:
  East、South、West、North。如果你用 1、2、3、4 来表示或设置这四个方向,写出来的代码显然具有很差的可读性,所以你可以定义一个方向的枚举类型:Direction

  Enum Direction
    East  = 1
    South = 2
    West  = 3
    North = 4
    End Enum

  ' 你可以定义一个枚举变量
  Dim dir As Direction
  ' 它的取值只有 4 种(1-4),就像 Integer 型变量取值范围是 -65536 -- 65535 (最值是随便写的),Integer 是一个数据类型,Direction 也是一个数据类型,Integer 和 Direction 之间可以相互转换,就像 Double 和 Single 之间可以相互转换一样。 --------------------编程问答-------------------- 如果这样写的话:
Enum Direction
    East  = 1
    South = 2
    West  = 3
    North = 4
    End Enum
Dim dir As Direction
messagebox.show(dir.east)
那么会得出什么结果呢? --------------------编程问答-------------------- youzelin
的例子让我找到了希望! --------------------编程问答-------------------- EAST 只是 1 的一个代名词,它的实质就是 1,所以结果是 1。

MessageBox.Show(Direction.EAST.ToString())  ' 输出 EAST --------------------编程问答-------------------- 请问这个什么时候用private
什么时候用public
有什么要求吗? --------------------编程问答-------------------- 请问ToString()
有什么作用?
为什么要在Direction后面加一个“.”
然后再加EAST
这样的话,看起来 有点像:
EAST是Direction一个属性
是吗? --------------------编程问答-------------------- 字符串也可以是汉字啊,只要好记就行,达到枚举的目的

private enum weekdays
星期一=0
星期二=1
星期三=2
end enum

使用的时候 
aa=weekdays.星期一
weekdays.星期一也可以转为整型0



不是说字符串要加“”
的吗?
但是你这里为什么没加“” --------------------编程问答-------------------- ToString(): 你有 VS.NET 吗?查一下 MSDN ,上面说的很清楚的。其实顾名思义也知道意思。

枚举不是字符串,枚举名是整数的代名词,实质就是整数
补充:.NET技术 ,  VB.NET
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,