摘要:
避免在finally撰写无效代码:先提出一个问题,即:是否存在一种打破try-finally执行顺序的情况。答案是:没有(除非应用程序本身因为某些很少出现的特殊情况在try块中退出)。你应该始终认为finally内代码会在方法return之前被执行,哪怕return是在try块中。但需要区分引用类型变量和值类型变量在finally中会导致不同结果。 private static int TestIntReturnInTry() { int i; try { return i = 1; ... 阅读全文
摘要:
在 .Net 中,我们一般使用 Random 类来生成随机数,它仅提供了以下几个基本方法供我们使用:名称说明Next() 返回非负随机数。Next(Int32) 返回一个小于所指定最大值的非负随机数。Next(Int32, Int32) 返回一个指定范围内的随机数。NextBytes 用随机数填充指定字节数组的元素。NextDouble 返回一个介于 0.0 和 1.0 之间的随机数。如果想生成一些特殊的随机数,如枚举、日期等,则要再进行几步处理。本文将会扩展 Random 类,让随机更方便。Random 常用扩展布尔:NextBool随机返回 true 或 false,这个实现比较简单:pu 阅读全文