Java中用Random类生成1到9的随机数该怎么写?使用种子

如题所述

写法:inttemp=m+(int)(Math.random()*(n+1-m));//Java生成从m到n的随机整数[m,n]。

random(),函数,random函数返回一个0~num-1之间的随机数。random(num)是在stdlib.h中的一个宏定义。num和函数返回值都是整型数。

扩展资料:

注意

如需要在一个random()序列上生成真正意义的随机数,在执行其子序列时使用randomSeed()函数预设一个绝对的随机输入,例如在一个断开引脚上的analogRead()函数的返回值。

反之,有些时候伪随机数的精确重复也是有用的。这可以在一个随机系列开始前,通过调用一个使用固定数值的randomSeed()函数来完成。

温馨提示:内容为网友见解,仅供参考
第1个回答  2021-01-19

由题目的要求,我们要产生随机数,必须先生成一个随机数种子,然后根据这个种子来用random类来生成一个随机数。

生成1到9的随机数的正确代码:

import java.io.*;

class test  

{

public static void main (String[] args) throws java.lang.Exception

{

    int x=1,y=9;

int t=x+(int)(Math.random()*(y+1-x));

System.out.println(t);

}

}

扩展资料:

Java的特点:

1、异常处理是Java中使得程序更稳健的另一个特征。异常是某种类似于错误的异常条件出现的信号。使用try/catch/finally语句,程序员可以找到出错的处理代码,这就简化了出错处理和恢复的任务。

2、安全性,Java的存储分配模型是它防御恶意代码的主要方法之一。Java没有指针,所以程序员不能得到隐蔽起来的内幕和伪造指针去指向存储器。更重要的是,Java编译程序不处理存储安排决策,所以程序员不能通过查看声明去猜测类的实际存储安排。

3、可移植性,Java使得语言声明不依赖于实现的方面。例如,Java显式说明每个基本数据类型的大小和它的运算行为(这些数据类型由Java语法描述)。

Java环境本身对新的硬件平台和操作系统是可移植的。Java编译程序也用Java编写,而Java运行系统用ANSIC语言编写。

4、高性能,Java是一种先编译后解释的语言,所以它不如全编译性语言快。但是有些情况下性能是很要紧的,为了支持这些情况,Java设计者制作了“及时”编译程序,它能在运行时把Java字节码翻译成特定CPU(中央处理器)的机器代码,也就是实现全编译了。

Java字节码格式设计时考虑到这些“及时”编译程序的需要,所以生成机器代码的过程相当简单,它能产生相当好的代码。

5、多线程性,Java是多线程语言,它提供支持多线程的执行(也称为轻便过程),能处理不同任务,使具有线索的程序设计很容易。

6、动态性,Java语言设计成适应于变化的环境,它是一个动态的语言。例如,Java中的类是根据需要载入的,甚至有些是通过网络获取的。

RANDOM产生的是伪随机数或者说是用一种复杂的方法计算得到的序列值,因此每次运算时需要一个不同的种子值。种子值不同,得到的序列值也不同。因此也就是真正的随机数了。这也正是RANDOMIZE随机初始化的作用。

参考资料来源:百度百科-Java

参考资料来源:百度百科-random

本回答被网友采纳
第2个回答  2021-01-19

//Java生成从m到n的随机整数[m,n]

int temp=m+(int)(Math.random()*(n+1-m));

例如:

public static void main(String ...args) {

int x=100; // 上界。

java.util.Random random=new java.util.Random();

// 返回0 to x的一个随机数但不会取到x,即返回[0,x)闭开区间的值。

int rn=random.nextInt(x);

System.out.println(rn);

}

扩展资料:

随机数是专门的随机试验的结果。在统计学的不同技术中需要使用随机数,比如在从统计总体中抽取有代表性的样本的时候,或者在将实验动物分配到不同的试验组的过程中,或者在进行蒙特卡罗模拟法计算的时候等等。

产生随机数有多种不同的方法。这些方法被称为随机数发生器。随机数最重要的特性是:它所产生的后面的那个数与前面的那个数毫无关系。

参考资料来源:百度百科-随机数

本回答被网友采纳
第3个回答  2020-05-08
//Java生成从m到n的随机整数[m,n]
int temp=m+(int)(Math.random()*(n+1-m));本回答被提问者和网友采纳
相似回答