using System; using System.Collections.Generic; using System.IO; using System.Linq; using System.Text; using System.Threading.Tasks;

namespace a {    public class Program     {         static void Main(string[] args)         {             MyClass mc = new MyClass();             //匿名委托             mc.HowToDoIt(delegate(int a) {                 Console.WriteLine(a);             },10);             //拉姆达表达式             mc.HowToDoIt(a => Console.WriteLine(a), 10);                        //将数据循环出来             List<string> strlist = new List<string> { "aa", "bb" };             strlist.ForEach(a => Console.WriteLine(a));//.net语法糖             foreach (var item in strlist)//普通写法             {                 Console.WriteLine(item);             }

//将文件写入磁盘中(普通写法)             StreamWriter sw = null;             try             {                 sw = new StreamWriter(@"d:\abcd.txt");                 sw.WriteLine("test");             }             finally             {                 if (sw != null) sw.Dispose();             }             //讲文件写入磁盘(.net语法糖写法)             using (var sws=new StreamWriter(@"d:\abs.txt"))             {                 sws.WriteLine("test");             }             //读取文件内容             using (var sr=new StreamReader(@"d:\abs.txt"))             {                 Console.WriteLine(sr.ReadLine());             }            // 三元表达式             var b = 3;             var c = b > 9?b.ToString():"0"+b;             Console.WriteLine(c);             //两个问号表示,如果左边的是空的话,就等于右边的值,如果右边是空的话就等于左边的值             string aa = "我是aa";             string bb = aa ?? "我是bb";             Console.WriteLine(bb);

//测试传入的数值是否是数字             var isnum = TestNumber.IsNumber("123");             Console.WriteLine(isnum);

//匿名类             var li = new             {                 ID="11",name="小红",age=21             };             Console.WriteLine("我是"+li.name+",今年"+li.age+"岁。");

Console.ReadLine();         }           } }

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks;

namespace a {    public class MyClass     {        public delegate void DoSomeThing(int a);        public void HowToDoIt(DoSomeThing doMethod,int a) {            doMethod(a);        }

} }

using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Text.RegularExpressions; using System.Threading.Tasks;

namespace a {   public static class TestNumber     {       static private Regex tSnumber = new Regex("\\d+");//实例化一个正则表达式       //将传人的参数与正则表达式匹配       static public bool IsNumber(this string number)       {           if (string.IsNullOrEmpty(number))           {               return false;           }           else           {               return tSnumber.IsMatch(number);           }       }     } }

.net的一些新语法的整理的更多相关文章

  1. Java 5-11新特性的整理(转)

    Java 5-11新特性的整理(转) 作者:拔剑少年 简书地址:https://www.jianshu.com/u/dad4d9675892博客地址:https://it18monkey.github ...

  2. mysql基础知识语法汇总整理(二)

    mysql基础知识语法汇总整理(一) insert /*insert*/ insert into 表名(字段列表) values(值列表); --蠕虫复制 (优点:快速复制数据,测试服务器压力) in ...

  3. mysql基础知识语法汇总整理(一)

    mysql基础知识语法汇总整理(二)   连接数据库操作 /*连接mysql*/ mysql -h 地址 -P 端口 -u 用户名 -p 密码 例如: mysql -u root -p **** /* ...

  4. [C#] 回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性

    回眸 C# 的前世今生 - 见证 C# 6.0 的新语法特性 序 目前最新的版本是 C# 7.0,VS 的最新版本为 Visual Studio 2017 RC,两者都尚未进入正式阶段.C# 6.0 ...

  5. qt5中信号和槽的新语法

    qt5中的连接 有下列几种方式可以连接到信号上 旧语法 qt5将继续支持旧的语法去连接,在QObject对象上定义信号和槽函数,及任何继承QObjec的对象(包含QWidget). connect(s ...

  6. Qt 5.0+ 中 connect 新语法与重载函数不兼容问题的解决方法,以及个人看法

    Qt 5.0+ 版本提供了 connect 的新语法,相比之前的语法新语法可以提供编译期检查,使用也更方便.可是使用过程中发现一个小问题——当某个 signal 和成员函数是重载关系的时候,qmake ...

  7. .NET中那些所谓的新语法之一:自动属性、隐式类型、命名参数与自动初始化器

    开篇:在日常的.NET开发学习中,我们往往会接触到一些较新的语法,它们相对以前的老语法相比,做了很多的改进,简化了很多繁杂的代码格式,也大大减少了我们这些菜鸟码农的代码量.但是,在开心欢乐之余,我们也 ...

  8. .NET中那些所谓的新语法之二:匿名类、匿名方法与扩展方法

    开篇:在上一篇中,我们了解了自动属性.隐式类型.自动初始化器等所谓的新语法,这一篇我们继续征程,看看匿名类.匿名方法以及常用的扩展方法.虽然,都是很常见的东西,但是未必我们都明白其中蕴含的奥妙.所以, ...

  9. .NET中那些所谓的新语法之三:系统预定义委托与Lambda表达式

    开篇:在上一篇中,我们了解了匿名类.匿名方法与扩展方法等所谓的新语法,这一篇我们继续征程,看看系统预定义委托(Action/Func/Predicate)和超爱的Lambda表达式.为了方便码农们,. ...

随机推荐

  1. C#用正则表达式对IP进行排序

    static void Main(string[] args) { string IPs = " 192.168.1.1 202.47.4.6 1.2.3.3 "; Console ...

  2. CF 214B Hometask(想法题)

    题目链接: 传送门 Hometask Time Limit: 2 seconds     Memory Limit: 256 megabytes Description Furik loves mat ...

  3. VS 错误解决(项目-属性-启用调试器)

    我是先安装了VS2012, 之后由于需要安装了VS2008, 但在VS2012中可以运行程序但是不能调试, 即按Ctrl+F5可以运行, 但是按F5会提示错误. "尝试运行项目时出错:Unc ...

  4. Linux 下解压大全

    .tar 解包:tar xvf FileName.tar 或 tar zxvf FilenName.tar打包:tar cvf FileName.tar DirName(注:tar是打包,不是压缩!) ...

  5. 在linux下如何将文件夹打包

    tar tar命令可以用来压缩打包单文件.多个文件.单个目录.多个目录. 常用格式: 单个文件压缩打包 tar czvf my.tar file1 多个文件压缩打包 tar czvf my.tar f ...

  6. Foundation框架--字典( NSDictionary NSMutableDictionary )

    基础知识 1.字典不允许相同的key,但允许有相同的value. 2,字典是无序的,字典不能排序. 3.字典里的内容是成对存在的,不会出现单数. 4.快速创建的方式只适合不可变字典. 不可变字典 #i ...

  7. cmake 编译 c++ dll 的一个例子

    CMakeLists.txt project(xxx) add_library(xxx SHARED xxx.cpp) add_executable(yyy yyy.cpp) target_link_ ...

  8. Hosts知多少?

    Hosts知多少?   老D hosts 定期更新地址: http://laod.cn/hosts/2016-google-hosts.html   老Dhosts 页面长期更新最新Google.谷歌 ...

  9. PHP中的NULL类型

    特殊的NULL值表示一个变量没有值,NULL类型唯一的值就是NULL.我们需要注意的是NULL不表示空格,也不表示零,也不是空字符串,而是一个变量的值为空.NULL不区分大小写,在下列情况下一个变量被 ...

  10. Java多线程编程核心技术--Lock的使用(一)

    使用ReentrantLock类 在Java多线程中,可以使用synchronized关键字来实现线程之间的同步互斥,但在JDK1.5中新增加了ReentrantLock类也能达到同样的效果,并且在扩 ...