我是靠谱客的博主 无奈嚓茶,最近开发中收集的这篇文章主要介绍Java--随机数 random(),觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

生成随机数

        * 1.Math类     使用Math中的ramdom()方法
              random():生成随机数0.0 - 1.0之间
          * 2.Random()    使用Random类中的nextInt()方法
              nextInt():生成随机数

具体实现

1.使用Math中的ramdom()方法,生成随机数0.0 - 1.0之间

double d = Math.random();
System.out.println(d);

生成1 -36之间的随机数

int a = (int)(Math.random()*36)+1;
System.out.println(a);

2.使用Random类中的nextInt()方法
取值范围[) 左开右闭

Random random = new Random();
int num = random.nextInt(5);
System.out.println(num);
//运行结果会出现 0 1 2 3 4  不会出现 5

练习

实现36选7 要求:1.使用数组 2.不能有重复
代码如下

package com.hpe.example;

import java.util.Arrays;
import java.util.Random;
public class Demo9 {
	public static void main(String[] args) {
	int[] arr = new int[7];
	// 用来表示生成有效数字的个数,表示数组的下表
	int count = 0;
	// 生成随机数
	int temp = 0;
	
	//假设生成的随机数没有重复
	boolean flag = false;
	while (count < arr.length) {
		temp = (int)(Math.random()*36)+1;
		// 判断生成的随机数是否有重复
		for (int i = 0; i < count; i++) {
			if (arr[i] == temp) {
				// 发现有重复的数值
				flag = true;
				break;
			}
		}
		// 如果没有发现重复,则将生成的随机数存放在数组中
		if(flag == false) {
			arr[count] = temp;
			count++;
		}else {
			//如果发现重复的随机数,则将flag状态恢复
			flag = false;
		}
	}
	// 打印数组
	// Arrays:操作数组的工具类
	System.out.println(Arrays.toString(arr));
	
}
}

补充

  • 获取指定区间内的随机数
import java.util.Random;
public class Demo10 {
	/**
	 * 获取指定区间的随机数
	 * 
	 * @param min
	 *            最小值
	 * @param max
	 *            最大值
	 * @return 
	 */
	public static int getRandom(int min, int max) {
		Random random = new Random();
		int s = random.nextInt(max - min + 1) + min;
		return s;
	}

	public static void main(String[] args) {
		// 获取11 - 17之间的随机数
		int result = getRandom(2, 31);
		System.out.println(result);
	}
}

最后

以上就是无奈嚓茶为你收集整理的Java--随机数 random()的全部内容,希望文章能够帮你解决Java--随机数 random()所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(43)

评论列表共有 0 条评论

立即
投稿
返回
顶部