这篇文章主要为大家展示了如何使用java Random.nextInt()方法,内容简而易懂,希望大家可以学习一下,学习完之后肯定会有收获的,下面让小编带大家一起来看看吧。
lic int nextInt(int n)
该方法的作用是生成一个随机的int值,该值介于[0,n)的区间,也就是0到n之间的随机int值,包含0而不包含n。
直接上代码:
package org.xiaowu.random.demo; import java.util.Random; import org.junit.Test; public class RandomDemo { @Test public void Demo(){ Random rnd = new Random(); int code = rnd.nextInt(8999) + 1000; System.out.println("code:"+code); } @Test public void Demo1(){ Random r = new Random(); int nextInt = r.nextInt(); Random r1 = new Random(10); int nextInt2 = r1.nextInt(); System.out.println("nextInt:"+nextInt); System.out.println("nextInt2:"+nextInt2); } /** * 生成[0,1.0)区间的小数 * */ @Test public void Demo2(){ Random r = new Random(); double d1 = r.nextDouble(); System.out.println("d1:"+d1); } /** * 生成[0,5.0)区间的小数 * */ @Test public void Demo3(){ Random r = new Random(); double d2 = r.nextDouble()* 5; System.out.println("d1:"+d2); } /** * 生成[1,2.5)区间的小数 * */ @Test public void Demo4(){ Random r = new Random(); double d3 = r.nextDouble() * 1.5 + 1; System.out.println("d1:"+d3); } /** * 生成任意整数 * */ @Test public void Demo5(){ Random r = new Random(); int n1 = r.nextInt(); System.out.println("d1:"+n1); } /** * 生成[0,10)区间的整数 * */ @Test public void Demo6(){ Random r = new Random(); int n2 = r.nextInt(10); int n3 = Math.abs(r.nextInt() % 10); System.out.println("n2:"+n2); System.out.println("n3:"+n3); } /** * 生成[0,10]区间的整数 * */ @Test public void Demo7(){ Random r = new Random(); int n3 = r.nextInt(11); int n4 = Math.abs(r.nextInt() % 11); System.out.println("n3:"+n3); System.out.println("n4:"+n4); } /** * 生成[-3,15)区间的整数 * */ @Test public void Demo8(){ Random r = new Random(); int n4 = r.nextInt(18) - 3; int n5 = Math.abs(r.nextInt() % 18) - 3; System.out.println("n4:"+n4); System.out.println("n5:"+n5); } }
Java中使用Random类中的nextInt()方法返回一个伪随机数
问题
今天想让程序返回一个区间内的随机数。忘记怎么写了,就去百度搜给出的结果并不对。
import java.util.Random; /** * @author HP * @date 2019/4/16 */ public class randomTest { public static void main(String[] args) { Random random = new Random(); //生成64-128内的随机数 int i = random.nextInt() * (128 - 64 + 1) + 64; /** * 生成 [m,n] 的数字 * int i1 = random.nextInt() * (n-m+1)+m; * */ //生成0-64内的数字 int i1 = random.nextInt() * (64-0+1); /** * 生成0-n之内的数字 * int i1 = random.nextInt() * (n-0+1); * * * */ } }
这样是不对的,我就去查看API文档,发现nextInt()可以有参数也可以无参数。
无参数的方法直接调用返回的是一个很大的正负区间上的数。
如果想返回想要的范围内的数,应该:
package chapter6; import java.util.Random; import org.omg.Messaging.SyncScopeHelper; public class RandomTest { public static void main(String[] args) { Random random = new Random(); for(int i=0;i<200;i++) { // 输出为0~13之间的整数 System.out.println(random.nextInt(14)); } System.out.println("----------------------------"); for(int j=0;j<100;j++){ // 输出为-9~0之间的整数 System.out.println(random.nextInt(10)-9); } } }
以上就是关于如何使用java Random.nextInt()方法的内容,如果你们有学习到知识或者技能,可以把它分享出去让更多的人看到。
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。