zoukankan      html  css  js  c++  java
  • CSharp8.0 / C#8.0新语法【部分】

    using System;
    
    namespace CSharp8._0
    {
        public interface ICustom
        {
            public void Show();
    
            public void ShowInfo()
            {
                Console.WriteLine("showinfo");
            }
        }
    
        public class Custom : ICustom
        {
            public void Show()
            {
                Console.WriteLine("show");
            }
        }
    }
    

      

    using System;
    using System.Collections.Generic;
    using System.Text;
    
    namespace CSharp8._0
    {
        enum WeekInfo
        {
            Monday = 1,
            Tuesday = 2,
            Wednesday = 3,
            Thursday = 4,
            Friday = 5,
            Saturday = 6,
            Sunday = 7
        }
        public class EmployeeInfo
        { 
            public int Sex { get; set; }
            public string SexChinese { get; set; }
        }
        class SharpEightInfo
        {
            public static string WeekToStringOld(WeekInfo week)
            {
                switch (week)
                {
                    case WeekInfo.Monday:
                        return "周一";
                    case WeekInfo.Tuesday:
                        return "周二";
                    case WeekInfo.Wednesday:
                        return "周三";
                    case WeekInfo.Thursday:
                        return "周四";
                    case WeekInfo.Friday:
                        return "周五";
                    case WeekInfo.Saturday:
                        return "周六";
                    case WeekInfo.Sunday:
                        return "周日";
                    default:
                        throw new NotImplementedException("没有该枚举");
                }
            }
    
            public static string WeekToStringNew(WeekInfo week) => week switch
            {
                WeekInfo.Monday => "周一",
                WeekInfo.Tuesday => "周二",
                WeekInfo.Wednesday => "周三",
                WeekInfo.Thursday => "周四",
                WeekInfo.Friday => "周五",
                WeekInfo.Saturday => "周六",
                WeekInfo.Sunday => "周日",
                _ => throw new NotFiniteNumberException("不存在的枚举值")
            };
    
            public static bool SexToString(EmployeeInfo employee) => employee switch
            {
                { Sex: 0 } => employee.SexChinese == "男",
                { Sex: 1 } => employee.SexChinese == "女",
                { Sex: 2 } => employee.SexChinese == "未知",
                _ => throw new NotImplementedException("性别设定超出")
            };
    
            public static string TupleTest(int i, string x) => (i, x) switch
            {
                (1, "1") => $"{i}={x}",
                (1, "2") => $"{i}={x}",
                (1, "3") => $"{i}={x}",
                _ => "不存在"
            };
    
            public static int StaticLocationFun(int i)
            {
                int j = 1;
                return Add(i, j);
    
                static int Add(int i, int j) => i + j;
            }
        }
    }
    

      

    namespace CSharp8._0
    {
        class Program
        {
            static void Main(string[] args)
            {
                //默认接口方法
                ICustom custom = new Custom();
                custom.Show();
                custom.ShowInfo();
    
                //switch属性模式
                SharpEightInfo.WeekToStringOld(WeekInfo.Monday);
    
                SharpEightInfo.WeekToStringNew(WeekInfo.Tuesday);
    
                EmployeeInfo employee = new EmployeeInfo()
                {
                    Sex = 0,
                    SexChinese = "未知"
                };
                bool bol = SharpEightInfo.SexToString(employee);
    
                string result = SharpEightInfo.TupleTest(1, "2");
    
                //静态本地函数
                SharpEightInfo.StaticLocationFun(1);
    
                //可控类型
                //int? i = null;
            }
        }
    }
    

      

  • 相关阅读:
    经典音乐插曲推荐![附地址]
    广播电台常用51首背景音乐——绝对经典
    酒吧..夜店常用歌曲~潮人必备音乐噢~【附下载地址】
    ASP与ASP.NET互通COOKIES的一点经验
    linux进程状态浅析
    常用的酒吧经典乐曲106首
    呼和浩特电视台媒资管理系统的设计与分析
    不再为DataGrid生成的表格的单无格中的内容过长、自动折行、表格撑开等问题而烦恼
    Linux shell脚本全面学习
    ASP.NET文件管理显示信息
  • 原文地址:https://www.cnblogs.com/gygtech/p/14323062.html
Copyright © 2011-2022 走看看