UnityEngine.Random.Range求随机数的两个小坑

UnityEngine.Random.Range()有两个重载,

1、int Random.Range(int min,int max)

这个得到的是int类型的随机数,需要注意的是,随机数的取值范围包括min,但不包括max

例:int random = Random.Range(0,100);

random实际得到的是0~99的整型数,所以如果想要随机结果包含100的话,需要写成Random.Range(0,101);

2、float Random.Range(float min,float max)

这个得到的是float类型的随机数,需要注意的是,参数min和max必须带上浮点型的符号f,否则会被识别为整型;

例:float random = Random.Range(0,1),这个结果返回的是>=0,且<1的整型数,即会一直返回0;

正确写法是:float random = Random.Range(0f,1f);

这个并不是什么很难理解的点,但一不小心就会因为漏掉f,而得不到想要的结果

 

你可能感兴趣的:(Unity技术,Random.Range,随机数)