[C#] 简单的 Helper 封装 -- RandomHelper

 1 using System;
 2
 3 namespace Wen.Helpers
 4 {
 5     /// <summary>
 6     /// 随机数助手
 7     /// </summary>
 8     public sealed class RandomHelper
 9     {
10         /// <summary>
11         /// 字符集合(去掉 0oO 这几个容易混淆的字符)
12         /// </summary>
13         private const string CharSet = "[email protected]#$%^&*()_+|" ;
14
15         private static readonly Random Random = new Random ();
16
17         #region Next
18
19         /// <summary>
20         /// 返回非负随机数
21         /// </summary>
22         /// <returns> 大于等于零且小于 System.Int32.MaxValue 的 32 位带符号整数 </returns>
23         public static int Next()
24         {
25             return Random.Next();
26         }
27
28         /// <summary>
29         /// 返回一个指定范围内的随机数
30         /// </summary>
31         /// <param name="maxValue"> 要生成的随机数的上限(随机数不能取该上限值)。maxValue 必须大于或等于零 </param>
32         /// <returns>
33         /// 大于等于零且小于 maxValue 的 32 位带符号整数,即:返回值的范围通常包括零但不包括 maxValue。 不过,如果 maxValue 等于零,则返回 maxValue。
34         /// </returns>
35         public static int Next( int maxValue)
36         {
37             return Random.Next(maxValue);
38         }
39
40         /// <summary>
41         /// 返回一个指定范围内的随机数
42         /// </summary>
43         /// <param name="minValue"> 返回的随机数的下界(随机数可取该下界值) </param>
44         /// <param name="maxValue"> 返回的随机数的上界(随机数不能取该上界值)。 maxValue 必须大于或等于 minValue</param>
45         /// <returns>
46         /// 一个大于等于 minValue 且小于 maxValue 的 32 位带符号整数,即:返回的值范围包括 minValue 但不包括 maxValue。
47         /// 如果 minValue 等于 maxValue,则返回 minValue。
48         /// </returns>
49         public static int Next( int minValue, int maxValue)
50         {
51             return Random.Next(minValue, maxValue);
52         }
53
54         #endregion Next
55
56         /// <summary>
57         /// 返回一个介于 0.0 和 1.0 之间的随机数
58         /// </summary>
59         /// <returns> 大于等于 0.0 并且小于 1.0 的双精度浮点数 </returns>
60         public static double NextDouble()
61         {
62             return Random.NextDouble();
63         }
64
65         /// <summary>
66         /// 返回一个随机字符串
67         /// </summary>
68         /// <param name="length"> 字符串长度 </param>
69         /// <returns></returns>
70         public static string NextString( int length)
71         {
72             var arr = new char[length];
73
74             for (var i = 0; i < length; i++)
75             {
76                 var index = Random.Next(CharSet.Length);
77                 arr[i] = CharSet[index];
78             }
79
80             return string .Join( "", arr);
81         }
82     }
83 }
时间: 2024-08-25 20:28:36

[C#] 简单的 Helper 封装 -- RandomHelper的相关文章

[C#] 简单的 Helper 封装 -- SecurityHelper 安全助手:封装加密算法(MD5、SHA、HMAC、DES、RSA)

1 using System; 2 using System.IO; 3 using System.Security.Cryptography; 4 using System.Text; 5 6 namespace Wen.Helpers 7 { 8 /// <summary> 9 /// 安全助手 10 /// </summary> 11 public sealed class SecurityHelper 12 { 13 private static readonly byte

iOS开发—音频的播放的简单介绍和封装工具类

iOS开发—音频的播放的简单介绍和封装工具类 一.音效的播放简单介绍 简单来说,音频可以分为2种 (1)音效 又称“短音频”,通常在程序中的播放时长为1~2秒 在应用程序中起到点缀效果,提升整体用户体验 (2)音乐 比如游戏中的“背景音乐”,一般播放时间较长 框架:播放音频需要用到AVFoundation.framework框架 二.音效的播放 1.获得音效文件的路径 NSURL *url = [[NSBundle mainBundle] URLForResource:@"m_03.wav&qu

获取样式的简单的函数封装

var CSS = { getStyle:function(elem,name){//获取样式 if(elem.style[name]){ return elem.style[name]; } else if(elem.currentStyle){ return elem.currentStyle[name]; } else if(document.defaultView && document.defaultView.getComputedStyle){ name = name.repl

java中简单的db封装

package com.melin.bbs;    import java.sql.Connection;  import java.sql.DriverManager;  import java.sql.ResultSet;  import java.sql.SQLException;  import java.sql.Statement; public class DB { //建立连接 public static Connection getConn(){          Connect

简单二次封装的Golang图像处理库:图片裁剪

简单二次封装的Golang图像处理库:图片裁剪 一.功能 Go语言下的官方图像处理库 简单封装后对jpg和png图像进行缩放/裁剪的库 二.使用说明 1.首先下载 go get -v -u github.com/hunterhug/go_image 2.主要函数 按照宽度进行等比例缩放,第一参数是图像文件,第二个参数是缩放后的保存文件路径 err := ScaleF2F(filename, savepath, width) 按照宽度和高度进行等比例缩放,第一参数是图像文件,第二个参数是缩放后的保

[C#] Helper 的封装 -- RandomHelper

介于经常在项目中需要用到随机数,特别写了一个帮助类,代码如下 using System; 2 3 namespace Wen.Helpers 4 { 5 /// <summary> 6 /// 随机数助手 7 /// </summary> 8 public sealed class RandomHelper 9 { 10 /// <summary> 11 /// 字符集合(去掉 0oO 这几个容易混淆的字符) 12 /// </summary> 13 pri

前端小白之每天学习记录----js简单的组件封装

设计模式:是解决问题的模板 关于设计模式,可以阅读汤姆大叔的博文http://www.cnblogs.com/TomXu/archive/2011/12/15/2288411.html 这里简单介绍两种设计模式: 1.单例模式:单例就是保证一个类只有一个实例 eg:在JavaScript里,实现单例的方式有很多种,其中最简单的一个方式是使用对象字面量的方法,其字面量里可以包含大量的属性和方法: var people = { name: "lxb", age: "22"

仿照jQuery进行一些简单的框架封装(欢迎指教~)

1 (function(window,undefined){ 2 var arr = [], 3 push = arr.push, 4 slice = arr.slice; 5 //首先要做的就是封装一个parseHtml函数 6 //要注意的是,parthHtml要放在一个自调用函数内 7 var parseHtml = (function(){ 8 //做一个模板 9 var div = document.createElement('div'); 10 //这个函数是用来创建标签 11 f

简单的ajax封装

/** * 封装的ajax请求函数有利于集中处理一些公共部分 * 调用ajax */ $(document).on('click', '.btn', function(e) { var data = {}: var reqObj = { data: data, callback: { success: function(res) { alert('成功'); }, error: function(res){ alert('失败'); } } }; ajax(api.apply, reqObj,