摘要:
在讨论可空类型前,先回顾一下.NET对于类型的定义:".NET中类型分为值类型和引用类型,值类型不能为空,引用类型可为空";在这样的前提下,所有值类型都赋予了一个初始值例如:inti;(初始为0);由于数据库中出现的对应的值类型可为空,这样就出现了两者不能对应的问题。所有在C#2.0中引入了可为空的值类型,强调一点可空类型对于是值类型而言。实现方法如下:int i = 3;//一个值类型 int? k = 3;//一个可为空的值类型(简称可空类型) int m = null;//错误 int? j = null;//正确 从上面的例子我们可以看到在值类型后加上?可以定义一个 阅读全文
摘要:
【身份证最后一位神秘X的由来】身份证中的“冷知识”1999年的今天,《国务院关于实行公民身份号码制度的决定》被发布,当年10月1日实施。为什么有的有X?这位数是根据前17位计算出的校验码。如某人尾号是0-9,不会有X,如是10,则用X代替。Ⅹ是罗马数字的10,这能保证身份证号不多位。/// /// 转换15位身份证号码为18位/// /// 15位的身份证/// 返回18位的身份证private string IDCard15To18(string oldIDCard){ int iS = 0; //加权因子常数 int[] iW = new int[] { 7, 9, 1... 阅读全文
摘要:
returnreturn语句用于指定函数返回的值。return语句只能出现在函数的体内,出现在代码中的其他地方会出现语法错误。当执行return语句时,即使函数体内还有其他语句函数也会停止。public static void Do(){ return; } breakbreak语句会使运行的程序立刻退出包含在最内层的循环或者退出一个switch语句。由于它是用来退出循环或者switch语句,所有只有当它出现在这些语句中时break语句才是合法的。如果一个循环语句的终止条件非常复杂,那么使用break语句来实现某些条件比用循环表达式容易的多。比如:for (int i = 0; i... 阅读全文
摘要:
把doubel保留2位有效数字double d = 123;string res = string.Format("{0:F2}",d);结果是:d = 123.00参考:string str1 =string.Format("{0:N1}",56789); //result: 56,789.0string str2 =string.Format("{0:N2}",56789); //result: 56,789.00string str3 =string.Format("{0:N3}",56789); //r.. 阅读全文
摘要:
判断一个字符串是不是数字的方法:1. 最简单的方法public bool IsNumber(string str){ int number = 0; return int.TryParse(str,out number);}这个方法适用于日常生活中遇到的大多数情况,可是如果碰到极端的情况,比如超过了int类型所能承受的最大值int.MaxValue(2147483647)就会失败。2.一个万无一失的方法public static bool IsNumber(string numericText){ bool isNumber = false; foreach (char... 阅读全文
摘要:
String.Empty是string类的一个静态常量;String.Empty和string=””区别不大,因为String.Empty的内部实现是:public static readonly string Empty;//这就是String.Empty 那是只读的String类的成员,也是string的变量的默认值是什么呢?//String的构造函数static String(){ Empty = "";//Empty就是他"" WhitespaceChars = new char[] { '\t', '\n', & 阅读全文