C#
阿童木yss
不能则学,不知则问,耻于问人,决无长进。
展开
-
C# Lambda表达式
原文地址:http://www.cnblogs.com/kingmoon/archive/2011/05/03/2035696.htmlLambda表达式“Lambda表达式”是一个匿名函数,是一种高效的类似于函数式编程的表达式,Lambda简化了开发中需要编写的代码量。它可以包含表达式和语句,并且可用于创建委托或表达式目录树类型,支持带有可绑定到委托或表达式树的输入参数的内联表达式。所有Lambd转载 2017-01-14 10:53:39 · 414 阅读 · 0 评论 -
验证一个数是否为4的n次幂
将4的幂次方写成二进制形式后,很容易就会发现有一个特点:二进制中只有一个1(1在奇数位置),并且1后面跟了偶数个0; 因此问题可以转化为判断1后面是否跟了偶数个0就可以了。 4的整数次幂的二进制数都为 (4)100、(16)10000、(64)1000000…… 另外,4的幂次方4^n也可以写为2^(2*n),即也可以写为2的幂次方,当然就满足2的幂次方的条件了,即num & num-1==0。原创 2017-02-22 11:42:03 · 1373 阅读 · 0 评论 -
C# 线性表之单链表
数据类:namespace 单链表{ /// <summary> /// 结点 /// </summary> /// <typeparam name="T"></typeparam> public class Node<T> { private T data; //数据域 private Node<T> next; /原创 2017-03-01 12:46:13 · 640 阅读 · 0 评论 -
C# 正则表达式的使用
参考:http://www.cnblogs.com/youring2/archive/2009/11/07/1597786.html 在原文的基础上增加一些自己的理解实例。目前为止,许多编程语言和工具都包含对正则表达式的支持,C#也不例外,C#基础类库中包含有一个命名空间(System.Text.RegularExpressions)和一系列可以充分发挥规则表达式威力的类(Regex、Match、原创 2017-01-19 15:01:14 · 923 阅读 · 0 评论 -
C# 位运算符
表:位运算符 A=60,B=13; 运算符 描述 实例 $ 如果同时存在于两个操作数中,二进制 AND 运算符复制一位到结果中。 (A & B) 将得到 12,即为 0000 1100 l 如果存在于任一操作数中,二进制 OR 运算符复制一位到结果中。 (A l B) 将得到 61,即为 0011 1101 ^ 如果存在于其中一个操作数中但不同时存在于两个原创 2017-01-19 22:32:30 · 1311 阅读 · 0 评论 -
C# 斐波那契数列
斐波那契数列(Fibonacci sequence),又称黄金分割数列,指的是这样一个数列:1、1、2、3、5、8、13、21、34、……在数学上,斐波纳契数列以如下被以递归的方法定义:F(0)=1,F(1)=1, F(n)=F(n-1)+F(n-2)(n>=2,n∈N*)。1. static int Func(int n) { if (n <=原创 2017-01-19 21:24:43 · 2637 阅读 · 0 评论 -
C# Lambda表达式
首先先看下委托:delegate int GuangChaoshi(int a);static void Main(string[] args){ GuangChaoshi gwl = JieZhang; Console.WriteLine(gwl(10) + ""); //打印20,委托的应用 Console.ReadKey();}public sta原创 2017-01-19 20:46:56 · 521 阅读 · 0 评论 -
C# 匹配中文字符串的4种正则表达式分享
本文介绍在C#中使用匹配中文的正则表达式,包括纯中文、有中文、中文开头、中文结尾等几个正则表达式示例。在正则表达式中,中文可以通过Unicode编码来确定正则表达式范围。 在C#中,匹配中文的正则表达式用Unicode来表示时,范围是: [\u4e00-\u9fa5]。所以,在此基础上,我们可以得到如下一些正则表达式。1、匹配字符串全部是中文字符的正则表达式 代码如下:“^[\u4e00-\u9转载 2017-01-19 17:57:32 · 7791 阅读 · 3 评论 -
C#堆和栈的区别
原文:http://www.cnblogs.com/codingsilence/archive/2011/02/28/2146584.html解释1、栈是编译期间就分配好的内存空间,因此你的代码中必须就栈的大小有明确的定义;堆是程序运行期间动态分配的内存空间,你可以根据程序的运行情况确定要分配的堆内存的大小解释2、存放在栈中时要管存储顺序,保持着先进后出的原则,他是一片连续的内存域,有系统自动分配和转载 2017-01-19 09:43:21 · 669 阅读 · 0 评论 -
C#详解值类型和引用类型区别
原文:http://blog.csdn.net/qiaoquan3/article/details/51202926首先,什么是值类型,什么是引用类型?在C#中值类型的变量直接存储数据,而引用类型的变量持有的是数据的引用,数据存储在数据堆中。 值类型(value type):byte,short,int,long,float,double,decimal,char,bool 和 struct 统称转载 2017-01-18 23:43:58 · 390 阅读 · 0 评论 -
C# 线性表之顺序存储结构
前言毕业大半年了,发现自己在数据结构与算法这一块的知识不扎实,所以重新回顾一下大学学的知识并且做一些笔记。谢谢大家。举例白羊座,金牛座,双子座,巨蟹座,狮子座,处女座,天秤座,天蝎座,射手座,摩羯座,水瓶座,双鱼座,12个星座是按顺序排列的,都有自己固定的位置,除了第一个白羊座没有前驱,和最后一个双鱼座没有后驱,其他的都有前驱和后驱。定义线性表可以说是最简单的数据结构,它的描述为:n个数据元素的有限原创 2017-02-16 18:06:41 · 786 阅读 · 0 评论 -
C# 二进制读写与序列化和反序列化
可参考雨松大神:http://www.xuanyusong.com/archives/1919 http://www.xuanyusong.com/archives/1901文章将实现数据存储为二进制文件,然后通过二进制文件解析数据。二进制文件读写操作: //写入二进制文件 public static void WriteByteValues() {原创 2017-01-15 00:16:52 · 4078 阅读 · 0 评论 -
C# XML序列化和反序列化
原文:http://www.cnblogs.com/nhxy/archive/2010/11/16/1878409.html本文描述如何使用CLR中的StringWriter,XmlSerializer将对象, 对象集合序列化为Xml格式的字符串, 同时描述如何进行反序列化。看代码就能理解,直接上代码了:案例1:using System; using System.Collections.Gen转载 2017-01-14 20:00:53 · 590 阅读 · 0 评论 -
C# 特性
参考:https://msdn.microsoft.com/zh-cn/library/e8kc3626(v=vs.110) http://www.runoob.com/csharp/csharp-attribute.html特性(Attribute)是用于在运行时传递程序中各种元素(比如类、方法、结构、枚举、组件等)的行为信息的声明性标签。您可以通过使用特性向程序添加声明性信息。一个声明性标签是原创 2017-01-14 17:48:49 · 513 阅读 · 0 评论 -
C# 枚举类型的扩展
随机获得一个枚举public static T RandomEnum<T>() { T[] results = Enum.GetValues(typeof(T)) as T[]; Random random = new Random(); T result = results[random.Next(0, results.Length)];原创 2017-01-12 09:13:27 · 2406 阅读 · 0 评论 -
C# IEnumerable和IEnumerator 详解
初学C#的时候,老是被IEnumerable、IEnumerator、ICollection等这样的接口弄的糊里糊涂,我觉得有必要切底的弄清楚IEnumerable和IEnumerator的本质。 下面我们先看IEnumerable和IEnumerator两个接口的语法定义。其实IEnumerable接口是非常的简单,只包含一个抽象的方法GetEnumerator(),它返回一个可用于循环访问集合转载 2017-02-22 18:19:50 · 1539 阅读 · 0 评论