zoukankan      html  css  js  c++  java
  • C#6.0语法糖

      1 using System;
      2 using static System.Math;//using static,仅仅引入类中的静态方法
      3 namespace _6._0Syntax
      4 {
      5     class Program
      6     {
      7          delegate bool Predicate(string str);
      8         static void Main(string[] args)
      9         {
     10             /*nameof 
     11              string a = nameof(Program.Main);
     12             */
     13 
     14             /*String interpolation
     15               var s = string.Format("{0} is so beauty{{~~~}}", "You");
     16             Person p = new Person { Name = "senki", Age = 12 };
     17             var s = $"{p.Name,20} is {p.Age:D3} year{{s}} old";
     18             */
     19 
     20             /*NULL操作            
     21             string str = null;
     22             int? length = str?.Length;
     23             char? c = str?[0];
     24             int l = str?.Length ?? 0;
     25             List<Person> list = null;
     26             int? b= list?[0]?.Name?.Length;
     27             Predicate predicate = null;
     28             if (predicate?.Invoke(str) ?? false)
     29             {
     30             }
     31             */
     32 
     33             /*初始化时设定索引
     34               var numbers = new Dictionary<int, string> {
     35                  [7]="liu",
     36                  [9]="zhan",
     37                  [15]="qi"
     38              };*/
     39 
     40             /* 异常过滤器
     41              try
     42              {
     43                  throw new CustomException();
     44              }
     45              catch (Exception e) when (IsCanCatch(e))
     46              {                 
     47              }
     48              */
     49             Max(1, 2);//通过using static,直接使用静态方法
     50             Console.WriteLine(1);
     51             Console.ReadLine();
     52         }
     53 
     54         //表达式函数
     55         static void Print(string str) => Console.WriteLine($"{str}");
     56 
     57         class Person 
     58         {
     59             public string Name { get; set; } = "senki";//自动属性初始值设定
     60             public bool Sex { get; } = true;
     61             public int Age { get; set; }
     62             public string LastName => Name;//只读属性
     63             public char this[int i]=>Name?[i]??'A';//索引
     64            
     65 
     66         }
     67         class CustomException : Exception
     68         {
     69             public override string Message
     70             {
     71                 get
     72                 {
     73                     return "测试异常";
     74                 }
     75             }
     76         }
     77         private static bool IsCanCatch(Exception e)
     78         {
     79             if (e is CustomException)
     80                 return true;
     81             return false;
     82         }
     83 
     84         struct School
     85         {
     86             public string Name { get; set; }
     87             public int Age { get; }
     88             public School(string name, int age)
     89             {
     90                 Name = name;
     91                 Age = age;
     92             }
     93             //public School():this("",120)
     94             //{ }
     95 
     96         }
     97 
     98          
     99 }
    100 }
  • 相关阅读:
    iTerm2 颜色配置
    IOS_问题: Xcode8 安装KSImageName插件, 编代码就崩了
    IOS_设置启动图片若干问题
    Android 多国语言
    Reveal 配置与使用
    自定义代码块
    Android 动画
    SQL
    dialog
    2016-1-18UIlabel学习,正则表达式
  • 原文地址:https://www.cnblogs.com/goodlucklzq/p/4672494.html
Copyright © 2011-2022 走看看