改善C#程序的方法-2 使用TryParse】的更多相关文章

一 使用TryParse,而不是Parse 除string外的所有基元类型,都有两个将string类型转型为其本身类型的方法:Parse 和 TryParse. 以double类型为例,这两个方法最简单的原型为: public static Double Parse(string s); public static bool TryParse(string s, out Double result); 两者最大的区别是:如果字符串不满足转换的要求,Parse方法将引发一个异常.TryParse方…
写在开头: http://www.cnblogs.com/luminji    157个建议_勘误表 一:属性 属性和方法一样.也可以是virtual和abstract. 条款2:运行时常量(readonly)优于编译时常量(const) 运行时常量优于编译时常量[能正确运行才是关键].编译时常量比运行时常量稍微块一点,但是缺乏灵活性.性能非常关键,其值永远不变的情况下,我们才应该使用编译时常量. c# readonly 运行时常量[构造器一旦执行则不能对值进行修改]    const编译时常量…
正确操作字符串 引言: 字符串是使用很频繁的一种数据类型. 如果使用不慎,则会为一次字符串操作所带来的额外性能开销而付出代价. 下面从这几个方面来探讨如何正确操作字符串: 1.确保尽量少的装箱,尽可能避免编写不必要的装箱代码 string str1 = "str1" + 8; //运行时会完成一次装箱行为 string str2 = "str2" + 8.ToString(); //没有发生装箱行为,效率更高 2.避免分配额外的内存空间 在CLR中,string类是…
一 创建对象时考虑实现比较器 假设有这样的场景,有一个40个人的学生列表,业务中需针对学生的成绩来进行排序. 可以考虑用IComparable接口和ICompare接口实现: class Program { static void Main(string[] args) { var stus = new List<Student>(); stus.Add(new Student() { Name = "zhangsan", EnglishGrades = 80.5, Mat…
建议4: TryParse比Parse好 如果注意观察除string外的所有基元类型,会发现它们都有两个将字符串转型为本身的方法:Parse和TryParse.以类型double为例,这两个方法最简单的原型为: public static double Parse(string s) public static bool TryParse(string s, out double result) 两者最大的区别是,如果字符串格式不满足转换的要求,Parse方法将会引发一个异常:TryParse方…
建议2: 使用默认转型方法 除了字符串操作外,程序员普遍会遇到的第二个问题是:如何正确地对类型实现转型.在上一个建议中,从int转型为string,我们使用了类型int的ToString方法.在大部分情况下,当需要对FCL提供的类型进行转型时,都应该使用FCL提供的转型方法. 这些转型方法包括: 使用类型的转换运算符. 使用类型内置的Parse.TryParse,或者如ToString.ToDouble和ToDateTime等方法. 使用帮助类提供的方法. 使用CLR支持的转型. 下面分别对这些…
改善C#程序,提高程序运行效率的50种方法   转自:http://blog.sina.com.cn/s/blog_6f7a7fb501017p8a.html 一.用属性代替可访问的字段 1..NET数据绑定只支持数据绑定,使用属性可以获得数据绑定的好处: 2.在属性的get和set访问器重可使用lock添加多线程的支持. 二.readonly(运行时常量)和const(编译时常量) 1.const只可用于基元类型.枚举.字符串,而readonly则可以是任何的类型: 2.const在编译时将替…
编写高质量代码:改善Java程序的151个建议(第一章:JAVA开发中通用的方法和准则) 目录 建议1: 不要在常量和变量中出现易混淆的字母 建议2: 莫让常量蜕变成变量 建议3: 三元操作符的类型务必一致 建议4: 避免带有变长参数的方法重载 建议5: 别让null值和空值威胁到变长方法 建议6:覆写变长方法也循规蹈矩 建议7:警惕自增的陷阱 建议8:不要让旧语法困扰你 建议9:少用静态导入 建议10:不要在本类中覆盖静态导入的变量和方法 建议11:养成良好习惯,显示声明UID 建议12:避免…
建议150:使用匿名方法.Lambda表达式代替方法 方法体如果过小(如小于3行),专门为此定义一个方法就会显得过于繁琐.比如: static void SampeMethod() { List<string> list=new List<string>(){"Mike","Rose","Steve"}; var mike = list.Find(new Predicate<string>(HaveLength…
建议145:避免过长的方法和过长的类 如果违反“一个方法只做一件事”及类型的“单一职责原则”,往往会产生过长的方法和过长的类. 如果方法过长,意味着可以站在更高的层次上重构出若干更小的方法.以行数作为指标,有人建议一个方法不要超过10行,有人建议不要超过30行.当然,这没有唯一标准.在我看了,一个方法在VS中需要滚屏才能阅读完,那么就肯定有些过长了,必须想办法重构它. 对于类型,除非有非常特殊的理由,类型的代码不要超过300行.如果行数太多了,则要考虑是否重构. 转自:<编写高质量代码改善C#程…