随笔分类 -  C#基础

1 2 下一页
扩展方法 DataTable的ToList<T>
摘要:using System; using System.Collections.Generic; using System.Data; using System.Linq; using System.Text; using System.Reflection; namespace Extension 阅读全文
posted @ 2016-02-06 21:58 AmyAlisa 阅读(3133) 评论(0) 推荐(1)
Mutex 进程间互斥
摘要:学习Mutex的心得,不一定对,先记录一下。同步技术分为两大类,锁定和信号同步。锁定分为:Lock、Monitor信号同步分为:AutoResetEvent、ManualResetEvent、Semaphore以及Mutex。他们都继承自WaitHandle, AutoResetEv... 阅读全文
posted @ 2016-01-15 15:16 AmyAlisa 阅读(1122) 评论(0) 推荐(0)
文件操作FileStream,Log
摘要:1、关于读写文件,犯的一个低级错误,平常代码拷贝习惯了,就像电脑用多了会提笔忘字一样,所以平常还是要多多用心才好。 这段代码的意图是在文件中写入数据,如果原文件不存在,则先新建。 事实上,当真的执行了System.IO.File.Create(filename); 再执行System.IO.St... 阅读全文
posted @ 2015-12-30 12:24 AmyAlisa 阅读(819) 评论(0) 推荐(0)
olede读excel
摘要:注意点:需要比较excel文件中是否有重复列时,需要设置HDR=No,IMEX=1,即把第一列当做数据读取,不然读到的datatable列名会被自动加数字后缀。 /// /// 根据excel的文件的路径提取其中sheet表名称 /// //... 阅读全文
posted @ 2015-12-08 00:04 AmyAlisa 阅读(301) 评论(0) 推荐(0)
快速排序算法
摘要:快速排序的基本思想1、分解在数组中选择一个记录作为基准(一般选择第一个或者最后一个),以基准将数组划分为两部分,左边均小于等于基准值,右边均大于等于基准值,基准值位于正确的位置上面2、求解划分后,通过递归调用快速排序对左右区间再次进行排序3、组合递归调用后左右区间均已有序,组合步骤无需做什么设序列为... 阅读全文
posted @ 2015-12-06 17:32 AmyAlisa 阅读(231) 评论(0) 推荐(0)
匿名函数 invoke
摘要:delegate string MyDele(string str); string MyFun(string str) { return str; } private void Form1_Load(ob... 阅读全文
posted @ 2015-01-19 10:49 AmyAlisa 阅读(868) 评论(0) 推荐(0)
c# 冒号 :
摘要:1、表示继承关系 class classA:classB2、继承构造,调用自己这个类的某个构造函数,因为有的类构造函数很多参数,而有的参数又不是必须填写,或者可以提供一些默认值,就跟重载是一样的道理。在调用SocketServer(string ip, int port)时,先调用this(ip,... 阅读全文
posted @ 2014-12-19 10:00 AmyAlisa 阅读(8710) 评论(0) 推荐(3)
摘要:1、一个简单实现栈的类 1 using System; 2 using System.Collections.Generic; 3 using System.Linq; 4 using System.Text; 5 6 namespace ConsoleApplication1 7 { 8 ... 阅读全文
posted @ 2014-12-15 15:09 AmyAlisa 阅读(129) 评论(0) 推荐(0)
C# string[ ][ ] 与string[,]
摘要:1、string[][] 是一维数组,数组中的元素是string[],相当于锯齿数组例如:string[][] arrar = new string[][] { new string[]{"1", "1", "1" }, new string[]{"2", "2", "... 阅读全文
posted @ 2014-12-15 11:11 AmyAlisa 阅读(5139) 评论(0) 推荐(0)
多线程的通信方法
摘要:转自 http://www.cnblogs.com/mengyan/archive/2012/08/30/2664607.html一、进程通信方法在说明线程通信前,有必要对进程通信进行说明;进程间通信的方法主要有以下几种: (1)管道(Pipe):管道可用于具有亲缘关系进程间的通信,允许一个进程和另... 阅读全文
posted @ 2014-12-11 23:17 AmyAlisa 阅读(537) 评论(0) 推荐(0)
转 WCF WebService区别
摘要:下面我们来详细讨论一下二者的区别。Web Service和WCF的到底有什么区别。【1】Web Service:严格来说是行业标准,也就是Web Service 规范,也称作WS-*规范,既不是框架,也不是技术。 它有一套完成的规范体系标准,而且在持续不断的更新完善中。 它使用XML扩展标记语言来表... 阅读全文
posted @ 2014-12-11 23:13 AmyAlisa 阅读(194) 评论(0) 推荐(0)
线程安全
摘要:线程安全就是多线程访问时,采用了加锁机制,当一个线程访问该类的某个数据时,进行保护,其他线程不能进行访问直到该线程读取完,其他线程才可使用。不会出现数据不一致或者数据污染。线程不安全就是不提供数据访问保护,有可能出现多个线程先后更改数据造成所得到的数据是脏数据概述编辑如果你的代码所在的进程中有多个线... 阅读全文
posted @ 2014-12-11 18:07 AmyAlisa 阅读(199) 评论(0) 推荐(0)
转 接口和抽象类 虚方法 有什么区别
摘要:一、 接口和抽象类有什么区别你选择使用接口和抽象类的依据是什么?接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。抽象类表示的是,这个对象是什么。接口表示的是,这个对象能做什么。比如,男人,女人,这两个类(如果是类的话……),他们的抽象类是人。说明,他们都是人。人可以吃东西,狗也可... 阅读全文
posted @ 2014-12-11 18:05 AmyAlisa 阅读(277) 评论(0) 推荐(0)
转 面向对象的三个基本特征
摘要:面向对象的三个基本特征是:封装、继承、多态。封装封装最好理解了。封装是面向对象的特征之一,是对象和类概念的主要特性。封装,也就是把客观事物封装成抽象的类,并且类可以把自己的数据和方法只让可信的类或者对象操作,对不可信的进行信息隐藏。继承面向对象编程 (OOP) 语言的一个主要功能就是“继承”。继承是... 阅读全文
posted @ 2014-12-11 17:54 AmyAlisa 阅读(223) 评论(0) 推荐(0)
转载 泛型
摘要:泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性。泛型为.NET框架引入了类型参数(type parameters)的概念。类型参数使得设计类和方法时,不必确定一个或多个具体参数,其的具体参数可延迟到客户代码中声明、实现。这意味着使用泛型的类型参数T,写一个类MyList... 阅读全文
posted @ 2014-12-11 17:52 AmyAlisa 阅读(152) 评论(0) 推荐(0)
遍历list,字典
摘要:private void Form1_Load(object sender, EventArgs e) { List ids = new List(); ids.Add(1); string str = ... 阅读全文
posted @ 2014-12-11 17:40 AmyAlisa 阅读(302) 评论(0) 推荐(0)
转 拉姆达表达式,委托、匿名方法、Lambda表达式的演进
摘要:总结:Lambda表达式的语法:(参数列表=>执行语句)无参数格式 :()=>{执行语句}有参数格式:x=> x % 2 == 01、假设给我们一个泛型对象List,T为int类型,要求我们使用该对象方法FindAll(Predicate match)从中找出该List中的偶数,您如何实现? 说明... 阅读全文
posted @ 2014-12-11 17:39 AmyAlisa 阅读(308) 评论(0) 推荐(0)
int byte转换
摘要://命令码0x8001转为int为32769,发送时反序 byte[] bt = new byte[2] { 0x01, 0x80 }; int lt1 = BitConverter.ToUInt16(bt, 0); //int t... 阅读全文
posted @ 2014-12-11 17:37 AmyAlisa 阅读(150) 评论(0) 推荐(0)
委托,匿名方法
摘要:1、实名委托 //定义委托 private delegate string ChangeEventHandle(); private delegate int intEventHandle(int ID); private vo... 阅读全文
posted @ 2014-12-11 17:36 AmyAlisa 阅读(287) 评论(0) 推荐(0)
带参数线程,不带参数线程
摘要:private void button1_Click(object sender, EventArgs e) { //带参数 ThreadParam param = new ThreadParam(); param.t_... 阅读全文
posted @ 2014-12-11 17:31 AmyAlisa 阅读(255) 评论(0) 推荐(0)

1 2 下一页