C# Random类学习,让我们玩玩随机函数

举报
IC00 发表于 2022/09/26 20:01:57 2022/09/26
【摘要】 Random类是非常值得学习的一个类,所以我们今天一起学习一下Random这个类,对于模拟数据这个是随机类可是一个好东西,我们可以用这个随机函数模拟我们想要的数据,从而实现数据模拟,为了更好的学习随机数Random,我们做一个随机挑选饭菜的随机选择器,为了更好的学习,创作不易,点赞关注评论收藏!!!你的点赞是我学习的动力,你点赞是我创作的方向。

前言:

Random类是非常值得学习的一个类,所以我们今天一起学习一下Random这个类,对于模拟数据这个是随机类可是一个好东西,我们可以用这个随机函数模拟我们想要的数据,从而实现数据模拟,为了更好的学习随机数Random,我们做一个随机挑选饭菜的随机选择器,为了更好的学习,创作不易,点赞关注评论收藏!!!你的点赞是我学习的动力,你点赞是我创作的方向。

d97acf8bd6adc01a9bf0ed9bab50b0c2.gif

一、创建界面

我们平时有选择恐惧症的,每天的人生难题就是今天吃上面,我就是这样,每天下班不知道去吃什么,很难做出决断,于是趁着我们学习Random类这个随机函数,我们就做一个随机吃饭器,把你周边的店或者菜系添加进去,排好序再用Random函数随机产生一个数值,替我们选择菜系,这样就可以不用选择了,但是你必须要听它这个的,不然就没效果了不,我就把随机函数写进去了,既学习了又解决生活的问题了。哈哈哈!!

image.png

image.png

二、效果展示

效果展示一下,我们点击这个随机抽取会产生随机数,并通过Switch的方法去选择我们写好的菜系,从而达到随机挑选菜系,具体效果如下图。

image.png

三、Random类方法

这个就是Random的方法,Next是我们用的比较多的一个方法,它可以不要参数,也可以是一个参数,我用的比较多的是两个参数的,在某个范围之内的产生随机数,当然NextBytes也是比较好用的对于我们需要模拟数据赋值给byte数组时,这个就起到很好的作用。NextDouble ()和NextSingle(),前者是Double,后者是float,只有这个区别,而这个Sample ();只是介于0.0和1之间不会相等,前面哪两个会相等。其他的和Next大同小异。

Next()  
返回一个非负随机整数。
Next(Int32) 
返回一个小于所指定最大值的非负随机整数。
Next(Int32, Int32)  
返回在指定范围内的任意整数。
NextBytes(Byte[])   
用随机数填充指定字节数组的元素。
NextBytes(Span<Byte>)   
用随机数填充指定字节范围的元素。
NextDouble ();
返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。
NextInt64() 
返回一个非负随机整数。
NextInt64(Int64)    
返回一个小于所指定最大值的非负随机整数。
NextInt64(Int64, Int64) 
返回在指定范围内的任意整数。
NextSingle()
返回一个大于或等于 0.0 且小于 1.0 的随机浮点数。
Sample ();
返回一个介于 0.01.0 之间的随机浮点数。

四、代码逻辑

代码比较简单,只要记住在用Random的时候是需要new一个对象就可以了。

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
​
namespace IC00Test822
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }private void button1_Click(object sender, EventArgs e)
        {
            Random random = new Random();
            switch(random.Next(1,17))
            {
                case 1: textBox1.Text = "糖醋排骨"; break;
                case 2: textBox1.Text = "鱼香肉丝"; break;
                case 3: textBox1.Text = "宫保鸡丁"; break; 
                case 4: textBox1.Text = "麻婆豆腐"; break;
                case 5: textBox1.Text = "水煮鱼"; break;
                case 6: textBox1.Text = "红烧肉"; break;
                case 7: textBox1.Text = "棒棒鸡"; break;
                case 8: textBox1.Text = "醋熘鸡"; break;
                case 9: textBox1.Text = "圆笼粉蒸肉"; break;
                case 10: textBox1.Text = "东坡肉"; break;
                case 11: textBox1.Text = "东坡鱼"; break;
                case 12: textBox1.Text = "泡菜鱼"; break;
                case 13: textBox1.Text = "鸡豆花"; break;
                case 14: textBox1.Text = "瓤莲藕"; break;
                case 15: textBox1.Text = "板栗烧鸡"; break;
                case 16: textBox1.Text = "水煮肉片"; break;
                case 17: textBox1.Text = "可乐鸡翅"; break;
            }
        }
    }
}

总结:

这篇文章比较简单,里面也已经写好了方法让我们调用就可以了,界面制作比较简单,但是是一个比较实用的一个小工具。今天我只是展示了很基本的操作,不是很难大家不要喷啊,很多时候我们都会意识到自己的才疏学浅,所以还是需要不断的学习,创作不易,点赞关注评论收藏,你的点赞是我创作的动力,也是我学习的方向,我们一起加油哈!!!

haoping21111.gif

【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。