java随机数
java获取随机数
java中一般是通过Random类来获取随机数,构造函数一般有两种形式
- Random(long seed);
- Random();
第一种是利用seed作为随机发生器的种子
而第二种省略了seed,则则利用系统时间作为随机发生器的种子
Random random = new Random();创建完随机对象之后通过以下方法可以获得不同类型的随机数method:nextint()、nextLong()、nextFloat()、nextDouble();
以下是一个Demo
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();//随机数种子为系统时间
Random random1 = new Random(10);//随机数种子为10
System.out.println(random.nextint());
System.out.println(random1.nextInt());
}
}
运行两次结果如下:
第一次
167473050
-1157793070
第二次
1939312458
-1157793070
两次运行可知使用系统时间作为随机数种子产生的随机数有变化但是利用10 作为随机数种子产生的随机数不管运行多少次都不变
如果Random对象使用相同的种子(比如都是100),并且以相同的顺序调用相同的函数,那它们返回值完全相同。
产生指定范围的随机数(三种方法)
一、通过java.util包中的Random类的next方法来获得
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();
for(int i=0;i<10;i++)
System.out.print(random.nextInt(100)+" ");
}
}
三次运行结果如下:
二、(数据类型)(最小值+Math.random()*(最大值-最小值+1))
如果要产生100以内的随机数
(int)(Math.random()*(100-1+1))
产生1到100 以内的随机数
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();
for(int i=0;i<10;i++)
System.out.print((int)(Math.random()*100)+" ");
}
}
三、利用%进行取模操作即可
产生的随机数有正有负,利用abs方法取绝对值
通过%100就能得到100 以内的随机数
import java.util.Random;
public class CeShi{
public static void main(String []args) {
Random random = new Random();
for(int i=0;i<10;i++)
System.out.print(Math.abs(random.nextInt()%100)+" ");
}
}
相关阅读
在我们编写程序的时候,经常会需要电脑给我们随机生成一个整数,这个时候我们就需要一个随机数的生成器——rand()。rand()
switch的case语句可以处理int,short,byte,char类型的值,但是不能处理long,String等类型。 java switch基础语法 witch(表达式){ cas
import com.alibaba.fastjson.JSON;import com.alibaba.fastjson.JSONArray;import com.alibaba.fastjson.JSONObject;import io.
<html><script>function a(){document.write("屏幕分辨率为:"+screen.width+"*"+screen.height //最好是window.screen+"<br />"+
在JAVA策略当中,Java应用中CPU使用率过高我们该怎么办呢?我们需要时刻清楚排查java应用中CPU使用率高或内存占用高这类问题,其实在整