Random类概述

Random类在java.util包下,使用这个类可以生成随机数

package com.sutaoyu.usually_class;

import java.util.Random;

public class String_test15 {
public static void main(String[] args) {
Random r = new Random(); //生成int类型的随机数
int ran = r.nextInt(11);//生成0-10之间的随机数
System.out.println(ran);//0 //循环生成5个随机数
for(int i = 0;i<5;i++) {
System.out.println(r.nextInt(11));//8 2 1 1 2
}
}
}

练习:

完成一个彩票机选号码生成器,这里以双色球为例,双色球每注中奖号码由6个不同的红色球号码和1个蓝色球号码组成。红色球号码从1~33中选择;蓝色球号码从1~16中选择。

分析:随机的从1~33中选择6个不同的数字,需要去重,随机从1~16中选择1个数字,可以组成一注中奖号码。

package com.monkey1024.random;

import java.util.Arrays;
import java.util.Random; public class ColorBall { public static void main(String[] args) { //初始化双色球号码
int[] balls = new int[33];
for(int i=0; i<balls.length; i++){
balls[i] = i + 1;
} //创建数组用来标记红球是否重复
boolean[] isUsed = new boolean[33]; //创建数组用来存放6个红球
int[] result = new int[6];
//初始化数组下标
int length = 0; Random r = new Random();
while(true){
//生成0~32的随机数,将随机数作为数组下标,取得红球
int red = r.nextInt(33);
//判断生成的红球是否重复
if(isUsed[red] == true){
continue;
} //将选中的红球存放到结果中
result[length++] = balls[red];
//如果等于6则说明已经生成了6个红球了,跳出循环
if(length == 6){
break;
} //将生成的红球所对应的数组下标标记为true
isUsed[red] = true; }
//将数组排序
Arrays.sort(result);
//生成0~15的随机数,将随机数作为数组下标,取得蓝球
int blue = r.nextInt(16); //将红球打印
System.out.print("红球:");
for(int i=0; i<result.length; i++){
if(i == result.length - 1){
System.out.print(result[i]);
}else{
System.out.print(result[i] + ",");
}
} //将蓝球打印
System.out.print(" 蓝球:" + balls[blue]);
} }

最新文章

  1. 【Java EE 学习 82 上】【MAVEN基本安装和使用方法】
  2. 16.迭代器模式(Iterator Pattern)
  3. Ubuntu 14.04中文输入法的安装
  4. android 数据存储----文件方式 总结
  5. 获得iOS设备唯一标识
  6. JVM调优实战
  7. 用TLS实现安全TCP传输及配置和访问https的web服务(转)
  8. C#总结(三)DataGridView增加全选列
  9. MySQL自动化(全量+增量)备份脚本
  10. Intellij idea 复制粘贴查找快捷键失效
  11. tomcat的realm域
  12. python | Elasticsearch-dsl常用方法总结(join为案例)
  13. 转:解决tomcat服务器跨域问题
  14. schema举例二
  15. 安装vue CLI后, 出现安装权限问题
  16. Windows配置Java环境
  17. [Flutter] TextField 中只允许输入合法的小数
  18. 【LeetCode】44. Wildcard Matching (2 solutions)
  19. [UI基础][实现]九宫格之应用程序管理
  20. GO学习笔记 - 没有条件的 switch 同 switch true 一样。

热门文章

  1. wamp 开启短标签支持
  2. [转帖]go 命令
  3. [转贴] IPSEC From 知乎
  4. HDU 2255 奔小康赚大钱 (KM算法 模板题)
  5. 在MFC中显示图片(opencv Mat类型)
  6. 计算机网络【2】—— CSMA/CD协议
  7. Vue设置页面的title
  8. AtCoder Grand Contest 005
  9. 【POJ2411】Mondriaan&#39;s Dream(轮廓线DP)
  10. 【uoj129】 NOI2015—寿司晚宴