java中,利用random()产生随机整数的问题。

java中,利用random()产生随机整数的问题。,第1张

java生成随机整数的不同方法总结,具体看下面代码:如下图

拓展:

Java是一种可以撰写跨平台应用软件的面向对象的程序设计语言。Java 技术具有卓越的通用性、高效性、平台移植性和安全性,广泛应用于PC、数据中心、游戏控制台、科学超级计算机、移动电话和互联网,同时拥有全球最大的开发者专业社群。

Java是由Sun Microsystems公司推出的Java面向对象程序设计语言(以下简称Java语言)和Java平台的总称。Java由James Gosling和同事们共同研发,并在1995年正式推出。Java最初被称为Oak,是1991年为消费类电子产品的嵌入式芯片而设计的。

static修饰的成员变员是全局的,而不是公有的,就是程序运行期间都可以访问它,对它的改变,它都会记住,就是说下次再访问它就是改变后的

而且照你写的public static Random r_enemy_tank = new Random();它和public static Random r_enemy_tank;是等效的,因为静态变量系统会根据成员类型自动初始化它

例如:static int i;这里的i系统自动赋给它0值

Random r_enemy_tank = new Random(); 这个只是个普通的对象属性,只有实例化该类的对象后,它才会初始化而且它不会记住对它的改变

random用法:random(x); //注释:x是个正整数

即可随机产生0~x之间的一切整数。而且它是一个函数,不能单独使用。

如a:=random(100);就是随机产生1个0~100之间的数赋给变量a;

javalangMath random() 返回带正号的 double 值,该值大于等于 00 且小于 10。返回值是一个伪随机选择的数,在该范围 内(近似)均匀分布。 第一次调用该方法时,它将创建一个新的伪随机数生成器,与以下表达式完全相同 new javautilRandom 之后,新的伪随机数生成器可用于此方法的所有调用,但不能用于其他地方。 此方法是完全同步的,可允许多个线程使用而不出现错误。但是,如果许多线程需要以极高的速率生 成伪随机数,那么这可能会减少每个线程对拥有自己伪随机数生成器的争用。 返回: 大于等于 00 且小于 10 的伪随机 double 值。

javautilRandom 此类的实例用于生成伪随机数流。此类使用 48 位的种子,使用线性同余公式 (linear congruential form) 对其进行了修改。 如果用相同的种子创建两个 Random 实例,则对每个实例进行相同的方法调用序列,它们将生成并返 回相同的数字序列。为了保证此属性的实现,为类 Random 指定了特定的算法。为了 Java 代码的完全可 移植性, Java 实现必须让类 Random 使用此处所示的所有算法。 但是允许 Random 类的子类使用其他算法, 只要其符合所有方法的常规协定即可。 Random 类实现的算法使用一个 protected 实用工具方法,每次调用它最多可提供 32 个伪随机生成 的位。 很多应用程序会发现 Mathrandom()方法更易于使用。

不知道你说的是random类还是mathrandom,所以写了两个

1 Mathrandom

public class Test1 {

public static void main(String[] args) {

int a, b;

a = (int)(1+Mathrandom()(6));

b = (int)(1+Mathrandom()(6));

while (a != b) {

Systemoutprintln("Not equal! a=" + a + ", b=" + b);

a = (int)(1+Mathrandom()(6));

b = (int)(1+Mathrandom()(6));

}

Systemoutprintln("Equal! a=b=" + a);

}

}

2 random类

import javautilRandom;

public class Test2 {

public static void main(String[] args) {

int a, b;

Random ra = new Random();

a = ranextInt(6)+1;

b = ranextInt(6)+1;

while (a != b) {

Systemoutprintln("Not equal! a=" + a + ", b=" + b);

a = ranextInt(6)+1;

b = ranextInt(6)+1;

}

Systemoutprintln("Equal! a=b=" + a);

}

}

说下思路吧

1、random从0-26产生数字

2、写一个枚举类

1对应a 2对应b 等等

3、根据1产生的数字换成2对应的字母

4、执行6次的结果拼接成一个字符串即可

Random()函数能够返回带正号的double值,该值大于等于00且小于10,即取值范围是[00,10)的左闭右开区间,返回值是一个伪随机选择的数,在该范围内(近似)均匀分布。

以上就是关于java中,利用random()产生随机整数的问题。全部的内容,包括:java中,利用random()产生随机整数的问题。、Java中的Random、请教下JAVA里面的Random等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/zz/9793201.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-02
下一篇 2023-05-02

发表评论

登录后才能评论

评论列表(0条)

保存