【C#】
Zok93
热情中的冷静让人清醒,冷静中的热情使人执着。
展开
-
【C#】ToString()参数中格式解析大全
C货币 2.5.ToString("C")¥2.50D十进制数 25.ToString("D5")00025E科学型 25000.ToString("E")2.500000E+005F固定点 25.ToStr原创 2015-10-10 19:53:39 · 16244 阅读 · 1 评论 -
【C#】正则表达式匹配中文,英文字母和数字及_写法!并控制长度
using System.Text.RegularExpressions;匹配中文:[\u4e00-\u9fa5]英文字母:[a-zA-Z]数字:[0-9]匹配中文,英文字母和数字及_:^[\u4e00-\u9fa5_a-zA-Z0-9]+$同时判断输入长度:[\u4e00-\u9fa5_a-zA-Z0-9_]{4,10}^[\w\u4E00转载 2015-11-11 23:29:58 · 22643 阅读 · 1 评论 -
【C#】C#中正则表达式的使用
本文来自齐飞的博客:http://www.cnblogs.com/youring2/archive/2009/11/07/1597786.html目前为止,许多编程语言和工具都包含对正则表达式的支持,C#也不例外,C#基础类库中包含有一个命名空间(System.Text.RegularExpressions)和一系列可以充分发挥规则表达式威力的类(Regex、Match、Group等)转载 2015-11-11 23:36:51 · 4657 阅读 · 0 评论 -
【C#】Action委托类型
using System;/// /// Action 是一个没有返回值,但是可以有参数的委托类型/// Action 最多可以有16个参数/// namespace Action委托类型{ class MainClass { //------------无参无返回值方法------------------------------ private static void A原创 2015-11-23 02:12:42 · 9934 阅读 · 0 评论 -
【C#】delegate委托的定义和使用方法
using System;namespace delegate委托的定义和使用方法{ class MainClass { //【1】 定义一个返回值是string,无参数的委托类型 public delegate string GetAstring (); // ----------------------------------------------原创 2015-11-22 03:05:55 · 9966 阅读 · 0 评论 -
【C#】匿名方法的终结者——Lambda表达式
using System;namespace Lambda表达式{ class MainClass { public static void Main (string[] args) { //-----------------------匿名方法------------------------- // 从上面的代码其实我们可以看得出来,每一个委托的定义都必须通过一个能原创 2015-11-25 23:29:41 · 10394 阅读 · 0 评论 -
【C#】简单工厂模式
using System;// 可维护,可复用,可扩展,灵活性好namespace 简单工厂模式{ // 运算类 public class Operation { private double numberA = 0; public double NumberA { get { return numberA; } set { numberA =原创 2015-11-30 02:27:45 · 9888 阅读 · 0 评论 -
【C#】高级语言特有的单例模式
public class Singleton{ private Singleton () { } // 变量标记为 readonly,第一次引用类的成员或创建实例时,只实例化一次instance对象 public static readonly Singleton instance = new Singleton ();}原创 2015-12-09 01:01:16 · 6587 阅读 · 0 评论 -
C#使用Runtime.InteropServices打印变量的内存地址
以前不管是在C还是OC语言以及switf中还是其他语言中,当我们认为两个变量使用的是同一块内存地址的时候最简单的方法就是直接打印地址,然而在C#中,打印地址却变得不那么容易了首先,需要引入System.Runtime.InteropServices; 之后才能使用使用一些手段进行地址的打印using System;// 获取地址需要引入的库using S原创 2016-11-08 14:35:42 · 3700 阅读 · 0 评论 -
【C#】Func委托类型和匿名方法
using System;/// /// Func 必须有一个返回值类型,当前为无参数,返回值类型是int的方法/// Func 这种情况,string是方法的参数,int是方法的返回值/// 方法的返回值在<>的最后一个,除了最后一个类型,都是方法的参数/// 返回值类型在0-16个之间,返回值类型必须是1个/// namespace Func委托类型{ class Main原创 2015-11-23 02:30:06 · 11375 阅读 · 0 评论 -
【C#】Socket客户端与服务器的简单通信
客户端代码using System;using System.Net; // 获取网络信息相关数据使用using System.Net.Sockets; // 定义Socket类的时候使用using System.Text; // 数据转换的时候使用namespace Client{ class MainClass { public static void Main (原创 2015-12-04 09:07:02 · 10822 阅读 · 3 评论 -
【C#】Unity、C#面试题整理
1.C#中类是否支持多继承?请说明原因。答:不支持,需要用接口来实现多继承2.我们都知道一个类可以有多个构造函数,并且C#会在我们创建类的时候默认的提供一个无参的构造函数,当我实现了另外一个有参数的构造函数的时候,我还能调用无参数的构造函数吗?请说明原因。答:不能,因为一旦你实现了一个构造函数,C#就不会再提供默认的构造函数了,所以需要自己手动写入一个无参数的构造函数。原创 2015-09-30 09:38:04 · 40889 阅读 · 4 评论 -
【C#】如何实现一个迭代器
能够被foreach迭代的,那么它的内部一定实现了迭代器 需要继承 IEnumerable 接口或者是IEnumerable 接口,并实现其中的GetEnumerator方法迭代器代码使用 yield return 语句依次返回每个元素。yield break 将终止迭代using System;using System.Collections;namespace TEST{ //原创 2017-05-15 16:34:49 · 7129 阅读 · 0 评论 -
【C#】利用Conditional属性完成编译忽略
Conditional是.NET提供关于编译的属性描述,其作用是添加到方法或属上,通过定义编译符的方式告指示编译器应忽略方法调用或属性在我们的代码中经常会出现Console.WriteLint(“XXX”);类似的这种只在DEBUG模式下才输出的测试语句,实际发布中并没有意义 这里可能有同学会问,Debug和Release模式在哪里看?我使用的是MonoDevelop编译器,一般在编译器的左上角原创 2017-08-02 00:43:44 · 4574 阅读 · 0 评论 -
【C#】匹配中文字符串的4种正则表达式分享
本文介绍在C#中使用匹配中文的正则表达式,包括纯中文、有中文、中文开头、中文结尾等几个正则表达式示例。在正则表达式中,中文可以通过Unicode编码来确定正则表达式范围。在C#中,匹配中文的正则表达式用Unicode来表示时,范围是: [\u4e00-\u9fa5]。所以,在此基础上,我们可以得到如下一些正则表达式。1、匹配字符串全部是中文字符的正则表达式复制代码 代码如下:"转载 2015-11-11 23:27:48 · 6162 阅读 · 0 评论 -
【C#】正则表达式
元字符 说明. 匹配除换行符以外的任意字符\b 匹配单词的开始或结束\d 匹配数字\s 匹配任意的空白符\w 匹配字母或数字或下划线或汉字^ 匹配字符串的开始原创 2015-11-11 17:59:21 · 4233 阅读 · 0 评论 -
【C#】什么时候使用单例什么时候使用静态类?
观点一:(单例)单例模式比静态方法有很多优势:首先,单例可以继承类,实现接口,而静态类不能(可以集成类,但不能集成实例成员);其次,单例可以被延迟初始化,静态类一般在第一次加载是初始化;再次,单例类可以被集成,他的方法可以被覆写;最后,或许最重要的是,单例类可以被用于多态而无需强迫用户只假定唯一的实例。举个例子,你可能在开始时只写一个配置,但是以后你可能需要支持超过一个配置集,原创 2015-09-23 18:35:27 · 5148 阅读 · 0 评论 -
【算法】洗牌算法,普通数组方式
private static void Shuffle () { // 扑克牌初始化 string[] cardType = { "红桃", "黑桃", "方块", "梅花" }; string[] cardValue = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" }; List原创 2015-09-23 10:25:40 · 2898 阅读 · 0 评论 -
【C#】判断一个数是否是2的N次方
private static bool GetFlag(int num) { if (num < 1) return false; return (num & num - 1) == 0; }&:按位与,两个数都为1的时候才为1,若有一个不为1,则结果为0例如:我们输入一个数字8,那num-1就是7,现在按位与8&78的原创 2015-09-21 20:52:23 · 5334 阅读 · 0 评论 -
【C#】C#中单例的双重锁定模式
using System;using System.Collections.Generic;/// /// 适用于在多线程的情况下保证只有一个实例化对象的情况,例如银行的操作系统/// namespace DoubleInstance{ //---------------------------------- // 双重锁定单例 public sealed class Singl原创 2015-09-09 10:11:16 · 7168 阅读 · 2 评论 -
【Lua】Unity中热更新的实现方式
(1)使用lua脚本编写游戏的UI或者其他的逻辑,lua是一个精悍小巧的脚本语言,所以跨平台运行解析,而且不需要编译的过程(2)使用C#light(3)使用C#反射技术(可以调用dll文件中的类,这个方法非常的麻烦,并且IOS平台不支持反射技术)原创 2015-08-28 10:35:55 · 19173 阅读 · 0 评论 -
【C#】C#委托和事件的实例讲解
using System;namespace delegate_event{ // 定义一个猫类 class Cat { // 定义一个名字字段 private string name; // 创建构造函数,参数为string,给小猫一个初始的名字 // 如果初始化的时候不写名字会报错,除非再写一个重载 public Cat (string name) {原创 2015-07-22 15:33:29 · 8229 阅读 · 0 评论 -
【算法】扑克牌52张,无重复洗牌算法
private static void Shuffle () { string[] cardType = { "红桃", "黑桃", "方块", "梅花" }; string[] cardValue = { "A", "2", "3", "4", "5", "6", "7", "8", "9", "10", "J", "Q", "K" }; // 所有的卡牌,未打乱状态原创 2015-09-23 09:57:30 · 9037 阅读 · 1 评论 -
【Lua】访问C#中的属性和方法-特殊情况-带有out和ref关键字
using System;using LuaInterface;namespace myLua{ class MainClass { public string name = "Ocean"; public void CSharpMethod(string name ,out int count) { Console.WriteLine ("这是C#里的一个方法");原创 2015-08-28 23:46:14 · 5943 阅读 · 4 评论 -
【Lua】在C#工程中通过Lua调用C#中的字段和方法
using System;using LuaInterface;namespace myLua{ class MainClass { public string name = "Ocean"; public void CSharpMethod() { Console.WriteLine ("这是C#里的一个方法"); } public static void原创 2015-08-28 23:17:29 · 2642 阅读 · 1 评论 -
【Lua】在C#中通过lua调用C#中的类方法
using System;using LuaInterface;namespace myLua{ class MainClass { public static void Main (string[] args) { Console.WriteLine ("Hello World!"); // 创建一个Lua解释器 Lua lua = new Lua();原创 2015-08-28 21:44:05 · 4777 阅读 · 0 评论 -
【Lua】把C#中的静态方法注册进Lua的一个全局方法
using System;using LuaInterface;namespace myLua{ class MainClass { public static void Main (string[] args) { Console.WriteLine ("Hello World!"); // 创建一个Lua解释器 Lua lua = new Lua();原创 2015-08-28 19:56:34 · 2439 阅读 · 0 评论 -
【Lua】把一个C#方法注册进Lua的一个全局方法
using System;using LuaInterface;namespace myLua{ class MainClass { public static void Main (string[] args) { Console.WriteLine ("Hello World!"); // 创建一个Lua解释器 Lua lua = new Lua();原创 2015-08-28 19:49:35 · 1707 阅读 · 0 评论 -
【C#】Error 1 Inconsistent accessibility: parameter type C#错误原因
问题场景:我在C#定义了一个类A,其类型是默认类型,也就是只对命名空间内部全部开放。另外我又在另外一个命名空间里定义了另外一个类B(为public类型),并且在这个类中定义了A的public对象.在编译的时候提示上面的错误。问题分析:从上面的说明中我们可以看到,本来A对象是限定在它自己的命名空间里的,但是由于B的类型更加的开放,所以会导致B的类会原创 2015-07-16 11:11:11 · 16950 阅读 · 1 评论 -
【Unity】简单的扫雷代码,适合初学者
using UnityEngine;using System.Collections;public class Grid{ public int x; // 记录x坐标 public int y; // 记录y坐标 public bool hasBoom; // 是否有雷 pub原创 2015-06-25 23:43:26 · 9132 阅读 · 0 评论 -
【C#】从控制台输出1-100之间的数
private static void Print(int number) { Console.WriteLine(number); if (number % 200 != 0) { number = number + 1; Print(numbe原创 2015-09-22 15:30:02 · 6196 阅读 · 4 评论 -
【Unity】Unity3D教程:实现基于Socket通讯的公共聊天室
多个客户端一同使用就是一个简单的公共聊天室。服务端为一个控制台程序使用C#实现,当然,在Unity3D中也相应地使用了C#语言实现客户端,服务端和客户端能实现消息的互通,当服务端接收到某客户端发送过来的消息时将会对客户端列表成员进行广播,这是公共聊天室的最基本的形式。Socket通讯是网络游戏最为基础的知识,因此这个实例能向有志投身于网游行业的初学者提供指导意义。using System;u转载 2015-07-24 11:13:33 · 4937 阅读 · 0 评论 -
【算法】输出斐波那契数列任意一位的值得算法
static int Fn(int n) { if (n <= 0) { throw new ArgumentOutOfRangeException(); } if (n == 1||n==2) {原创 2015-11-10 19:41:11 · 6004 阅读 · 0 评论 -
【C#】身份证本地验证
using System.Collections;using System.Collections.Generic;using UnityEngine;using System;using System.Text.RegularExpressions;using UnityEngine.UI;public class RealNameAuthentication : MonoBehav原创 2017-09-28 15:49:47 · 1240 阅读 · 1 评论