我正在尝试在 C# 中学习枚举。当我阅读一些文档时,我编写了一个程序。但我不明白这个程序是如何工作的。有人可以帮我看看它的工作吗?
我在下面发布我的代码:
程序 1:
public partial class MainPage {
[Flags]
enum Days {
Monday,
Tuesday,
Wednesday,
Thursday,
Friday ,
Saturday,
Sunday
};
// Constructor
public MainPage() {
InitializeComponent();
Days holidays = Days.Sunday | Days.Saturday;
if ((Days.Sunday | holidays) == Days.Sunday) // This returns true. Why ?
MessageBox.Show("True");
else
MessageBox.Show("False");
}
方案二:
在这里,我在枚举中分配整数值
public partial class MainPage {
[Flags]
enum Days {
Monday = 1,
Tuesday = 2,
Wednesday = 5,
Thursday = 8,
Friday = 10,
Saturday = 3,
Sunday = 0
};
// Constructor
public MainPage() {
InitializeComponent();
Days holidays = Days.Sunday | Days.Saturday;
if ((Days.Sunday | holidays) == Days.Sunday) // Why this returns false ?
MessageBox.Show("True");
else
MessageBox.Show("False");
}
在程序2中分配整数值后,if条件有什么区别?