回答

收藏

如何enumerate an enum

技术问答 技术问答 382 人阅读 | 0 人回复 | 2023-09-11

如何enum在 C# 中枚举一个?
  q3 {' ]6 p: J, |- p, ]" F/ D例如,不能编译以下代码:
# L5 I% p5 P# |. @: D
    ; i0 r# M% l# X$ A8 H; ~
  • public enum Suit{    Spades,   Hearts,   Clubs,   Diamonds}public void EnumerateAllSuitsDemoMethod(){     foreach (Suit suit in Suit)                                                                                                                                                                                                                 DoSomething(suit);  code]它给出了以下编译错误:
    + E+ v" [) P; [, {
  • “Sui类型是一种类型variable”一样使用- J/ O- G* @7 m4 k; ~! J
  • 它在Suit关键字失败,第二个。8 g8 e3 u( |& I
  •                                                                " w9 l, q6 d  r8 I- s5 R' H
  •     解决方案:                                                                                                                               [code]foreach (Suit suit in (Suit[]) Enum.GetValues(typeof(Suit))){}
    - J! l9 J. P' K: d/ s3 \, }. r, t
注意:强制转换(Suit[])不是绝对必要的,但它确实让代码快了 0.5 ns。
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则