java如何产生1-8的整数随机数?

如题所述

在java中,生成随机数使用的是Random类。要生成在[min,max]之间的随机整数,则可以如下:
import java.util.Random;
public class RandomTest {
public static void main(String[] args) {
int max = 8;
int min = 1;
Random random = new Random();

int s = random.nextInt(max)%(max-min+1) + min;
System.out.println(s);
}
}
其中,random.nextInt(max)表示生成[0,max]之间的随机数,然后对(max-min+1)取模。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2019-05-06
int result = 1 + (int)(Math.random()*8);//生成随机1到8
int a = 2003+ (int)(Math.random()*7);//生成随机2003到2009

第2个回答  2011-10-16
Random r=new Random();
int i=r.nextInt(9);
这样产生的i是从0~~8的整数,你要用的话,判断一下如果产生的是0就不要它
第3个回答  推荐于2017-11-24
Random r=new Random();
int i=r.nextInt(8)+1;本回答被提问者采纳
第4个回答  2018-04-11
random.nextInt(结尾数)+起始数
举例说明:

random.nextInt(8)+1:代表生成0到8 以内的数
结果只会在1到8 之间