C#中switch和case如何使用

今天就跟大家聊聊有关C# 中switch和case如何使用,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。

网站的建设创新互联公司专注网站定制,经验丰富,不做模板,主营网站定制开发.小程序定制开发,H5页面制作!给你焕然一新的设计体验!已为岗亭等企业提供专业服务。

  1. public static class SwithCaseExtension  

  2. {  

  3. SwithCase#region SwithCase  

  4. public class SwithCase, TOther> 

  5. {  

  6. public SwithCase(TCase value, Action action)  

  7. {  

  8. Value = value;  

  9. Action = action;  

  10. }  

  11. public TCase Value { get; private set; }  

  12. public Action Action { get; private set; }  

  13. }  

  14. #endregion  

  15.  

  16. Swith#region Swith  

  17. public static SwithCase, TOther> Switch, TOther>
    (this TCase t, Action action) where TCase : IEquatable 

  18. {  

  19. return new SwithCase, TOther>(t, action);  

  20. }  

  21.  

  22. public static SwithCase, TOther> Switch, TCase, TOther>
    (this TInput t, Func, TCase> selector, Action action)
    where TCase : IEquatable 

  23. {  

  24. return new SwithCase, TOther>(selector(t), action);  

  25. }  

  26. #endregion  

  27.  

  28. Case#region Case  

  29. public static SwithCase, TOther> Case, TOther>
    (this SwithCase, TOther> sc, TCase option, TOther other) 
    where TCase : IEquatable 

  30. {  

  31. return Case(sc, option, other, true);  

  32. }  

  33.  

  34. public static SwithCase, TOther> Case, TOther>
    (this SwithCase, TOther> sc, TCase option, TOther other, bool bBreak)
    where TCase : IEquatable 

  35. {  

  36. return Case(sc, c=>c.Equals(option), other, bBreak);  

  37. }  

  38.  

  39. public static SwithCase, TOther> Case, TOther>
    (this SwithCase, TOther> sc, Predicate predict, TOther other) 
    where TCase : IEquatable 

  40. {  

  41. return Case(sc, predict, other, true);  

  42. }  

  43.  

  44. public static SwithCase, TOther> Case, TOther>
    (this SwithCase, TOther> sc, Predicate predict,
    TOther other, bool bBreak) where TCase : IEquatable 

  45. {  

  46. if (sc == null) return null;  

  47. if (predict(sc.Value))  

  48. {  

  49. sc.Action(other);  

  50. return bBreak ? null : sc;  

  51. }  

  52. else return sc;  

  53. }  

  54. #endregion  

  55.  

  56. Default#region Default  

  57. public static void Default, TOther>
    (this SwithCase, TOther> sc, TOther other)  

  58. {  

  59. if (sc == null) return;  

  60. sc.Action(other);  

  61. }  

  62. #endregion  

看完上述内容,你们对C# 中switch和case如何使用有进一步的了解吗?如果还想了解更多知识或者相关内容,请关注创新互联行业资讯频道,感谢大家的支持。


当前标题:C#中switch和case如何使用
本文URL:http://bzwzjz.com/article/jcesdg.html