
C#/.NET
文章平均质量分 77
LonelyEnvoy
华南师范大学计算机系本科生
展开
-
C#开发命名规范
学习C#之初,始终不知道怎么命名比较好,很多时候无从命名,终于有一天我整理了一份命名规范文档,自此我就是按照这个命名规范书写代码,整洁度无可言表,拙劣之处请大家斧正,愚某虚心接受,如有雷同,不胜荣幸 C#语言开发规范 作者ching 1. 命名规范a) 类【规则1-1】使用Pascal规则命名类名,即首字母要大写。eg:Cl转载 2016-08-15 17:19:55 · 276 阅读 · 0 评论 -
C#中的数组,多维数组和交错数组
想研究一些面向对象的东西,也许是代码写得还不够多。感觉还不好,看那些教程,不是嫌太水就是太难看不懂。心情很是落寞不过再怎样也要坚持每天发一篇博客。这篇来说一下C#中的数组,多维数组,交错数组的一些东西。有那么一点点研究茴香豆的茴有四种写法的感觉。 先讲三点显而易见却又值得一提的东西 第一点数组是一种数据结构似乎没什么好解释的转载 2016-08-15 10:30:17 · 2304 阅读 · 0 评论 -
C#中(int)、int.Parse()、int.TryParse()和Convert.ToInt32()的区别
在编程过程中,数据转换是经常要用到的,C#中数据转换的方法很多,拿将目标对象转换为整型(int)来讲,有四种方法:分别为(int)、int.Parse()、int.TryParse()和Convert.ToInt32(),那么这四种方法对被转换对象有什么限制,以及各自之间有什么区别呢?相信很多童鞋也不能完全说清楚。下面从被转换对象说起,在我们实际开发项目的过程中,我们碰到需要被转换的类型大概有转载 2016-08-15 09:32:56 · 461 阅读 · 0 评论 -
无法将 匿名方法 转换为类型“System.Delegate”,因为它不是委托类型:解决方法
http://blog.youkuaiyun.com/xiaochongchong1248/archive/2009/11/20/4841193.aspx?1271573283编程环境要求:VS2008/FX2.0众所周知,从VS2005/FX2.0起,在多线程环境下是不允许跨线程修改主线程上窗口控件的。例如:private void button1_Click(objec转载 2016-08-26 10:44:21 · 4582 阅读 · 0 评论 -
在stream流和byte[]中查找(搜索)指定字符串
在 stream流 和 byte[] 中查找(搜索)指定字符串这里注重看的是两个 Search 的扩展方法,一个是 stream 类型的扩展,另一个是 byte[] 类型的扩展,如果大家有更好的“算法”,请给回复,我们一起优化! -- 常用扩展代码,需要这部分代码的支持!using System;using System.Collections.Gene转载 2016-09-02 19:54:56 · 3376 阅读 · 0 评论 -
C#中HashTable的用法
命名空间System.Collections 名称哈希表(Hashtable) 描述用于处理和表现类似keyvalue的键值对,其中key通常可用来快速查找,同时key是区分大小写;value用于存储对应于key的值。Hashtable中keyvalue键值对均为object类型,所以Hashtable可以支持任何类型的keyvalue键值对转载 2016-09-02 16:00:42 · 335 阅读 · 0 评论 -
数据结构和算法系列13 五大查找之哈希查找
这一篇要总结的是五天查找的最后一篇,哈希查找,也称为散列查找(本文以哈希称呼)。提起哈希,我的第一印象就是C#中的Hashtable类,它是由一组key/value的键值对组成的集合,它就是应用了散列技术。那么,什么是哈希查找呢?在弄清楚什么是哈希查找之前,我们要弄清楚哈希技术,哈希技术是在记录的存储位置和记录的关键字之间建立一个确定的对应关系f,使得每个关键字key对应一个存储位置f(k转载 2016-09-02 15:45:01 · 346 阅读 · 0 评论 -
C# 压缩与解压字符串(面试题)
/** 题目:压缩字符串。如“abbcccddddeef”,压缩成“a1b2c3d4e2f1”* 解题: 这个题目也是面试常见的题目。看似很简单,其实暗藏杀机。一般的想法就是,一边遍历,一边计数,然后将字符和计数器组合成新的字符串。* 这个想法没有错,但是结果有漏洞。* 等你写好算法,一般面试官会问以下两个问题中的一个:* 1:按照你的算法,“1111111转载 2016-08-23 12:04:22 · 661 阅读 · 0 评论 -
C#中的Where和Lambda表达式
1234567891011Liststring> listString = new Liststring>();listString.Add("abc");listString.Add("456");listString.Add("bbb");listString转载 2016-08-22 18:21:28 · 2166 阅读 · 0 评论 -
java/c# 判断点是否在多边形区域内
java/c# 判断点是否在多边形区域内2012年06月29日 ⁄ 综合 ⁄ 共 1547字 ⁄ 字号 小 中 大 ⁄ 评论关闭最近帮别人解决了一个问题,如何判断一个坐标点,是否在多边形区域内(二维)。在网上搜索了一圈,都是自己写代码,有多种算法,分凸多边形、凹多边形,总之是麻烦。 继续搜索,了解到 Java/dotnet 自带的类库中,都有现成的类函数,可以解决这个问题。转载 2016-08-31 22:41:39 · 933 阅读 · 1 评论 -
C# Task 用法
C# Task 的用法其实Task跟线程池ThreadPool的功能类似,不过写起来更为简单,直观。代码更简洁了,使用Task来进行操作。可以跟线程一样可以轻松的对执行的方法进行控制。顺便提一下,配合CancellationTokenSource类更为可以轻松的对Task操作的代码进行中途终止运行,会在后面的章节中讲述。如果我们使用线程池来实现某几个方法运行,然后等待运行完转载 2016-08-21 10:17:28 · 5741 阅读 · 0 评论 -
C# EventHandler and Delegate(委托的使用)
委托的声明public delegate void MyDelegate(string str);注1、委托的定义和方法的定义类似,只是在前面加了一个delegate,但委托不是方法,它是一种特殊的类型,看成是一种新的对象类型比较好理解。用于对与该委托有相同签名的方法调用。2、委托相当于C++中的函数指针,但它是类型安全的。3、委托是从System.Delegate派生,但转载 2016-08-20 12:21:10 · 1164 阅读 · 0 评论 -
C#中的泛型
泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性。泛型为.NET框架引入了类型参数(type parameters)的概念。类型参数使得设计类和方法时,不必确定一个或多个具体参数,其的具体参数可延迟到客户代码中声明、实现。这意味着使用泛型的类型参数T,写一个类MyList,客户代码可以这样调用:MyList, MyList或 MyList。这避免了运行时类型转换或装转载 2016-09-04 15:54:26 · 1143 阅读 · 0 评论 -
C# BackgroundWorker的使用
BackgroundWorker 可以用于启动后台线程。主要的事件及参数: 1.DoWork——当执行BackgroundWorker.RunWorkerAsync方法时会触发该事件,并且传递DoWorkEventArgs参数; 2.RunWorkerCompleted——异步操作完成或中途终止会触发该事件。如果需要提前终止执行后台操作,可以调用Background转载 2016-08-19 16:56:04 · 342 阅读 · 0 评论 -
C# 多线程防止卡死
软件界面的响应特性是判断一款软件的非常重要的方面。一般来说,不管你软件功能做得有多么奇妙,如果软件有一点点死机的感觉都会让用户感到很讨厌,甚至怀疑你软件里是否藏有更大的问题。 要提高界面的响应特性,最好的办法莫过于使用多线程,并把呈现界面的线程独立出来。以前只有使用C++才能实现的多线程功能,现在在.Net框架下,所有的语言(包括VB)都可以使用了。不过,使用多线程比使用单一线程转载 2016-08-19 16:27:00 · 10369 阅读 · 0 评论 -
c# 获取网页源码
C#获取指定网页HTML原代码可使用 WebClient WebRequest HttpWebRequest 三种方式来实现。当然也可使用webBrowse!在此就不研究webBrowse如何获取了。WebClient private string GetWebClient(string url){ string strHTML转载 2016-08-19 13:38:24 · 325 阅读 · 0 评论 -
正则表达式中双引号、单引号的表示
正则表达式中双引号、单引号的表示 知道正则表达式中用\u4e00-\u9fa5匹配汉字, 知道用\d匹配数字,\w匹配单词,\n换行……,可用什么匹配双引号呢" 有人用\" 来匹配双引号,或则用\'''匹配,可这只能在C#中才能用吧。偶然一天,发现如下方法求得了正则表达式中双引号的值. 第一步,求出字符的asc码。 第二步,把该asc码转换为4位的16进制转载 2016-08-19 13:35:29 · 19260 阅读 · 1 评论 -
C#中dynamic的正确用法
dynamic是FrameWork4.0的新特性。dynamic的出现让C#具有了弱语言类型的特性。编译器在编译的时候不再对类型进行检查,编译期默认dynamic对象支持你想要的任何特性。比如,即使你对GetDynamicObject方法返回的对象一无所知,你也可以像如下那样进行代码的调用,编译器不会报错: dynamic dynamicObject = GetDynamicObj转载 2016-08-28 16:19:57 · 1178 阅读 · 0 评论 -
C#中的数组
C# 数组 Array foreach 索引 null 地址:http://www.cnblogs.com/txw1958/archive/2013/01/11/csharp-array.html数组概述 数组是一种数据结构,它包含若干相同类型的变量。数组是使用类型声明的:数组具有以下属性:数组可以是一维、多维或交错的。数值数组元素的默认值设置为零,而引用元素的默认转载 2016-08-15 10:37:11 · 498 阅读 · 0 评论