public class test {

    public static void main(String[] args) {

        getRandomNum1();
getRandomNum2();
getRandomNum3();
getRandomNum4();
getRandomNum5();
} /**
* 对数组里面的数字进行循环判断,如果有不做处理,继续循环。没有就添加。
*/
private static void getRandomNum1() {
int [] arr = new int[5];
int count = 0;
while(count < 5) {
int num = (int) (Math.random() * (10)) ;
boolean flag = true;
for (int j = 0; j < 5; j++) {
if(num == arr[j]){
flag = false;
break;
}
}
if(flag){
arr[count] = num;
count++;
}
}
System.out.println("随机数1:"+Arrays.toString(arr));
}
/**
* 判断是否存在。不在就添加,在就不处理。继续循环
*/
private static void getRandomNum2() {
List list = new ArrayList();
while(list.size() < 5) {
int num = (int) (Math.random() * (10)) ;
if(!list.contains(num)) {
list.add(num);
}
}
System.out.println("随机数2:"+Arrays.toString(list.toArray()));
}
/**
* 利用set特性.自动去重
*/
private static void getRandomNum3() {
Set set = new TreeSet<>();
while(set.size() < 5) {
int num = (int) (Math.random() * (10)) ;
set.add(num);
}
System.out.println("随机数3:"+Arrays.toString(set.toArray()));
} /**
* 利用map特性做空判断
*/
private static void getRandomNum4() {
Map map = new HashMap<>();
while(map.size() < 5) {
int num = (int) (Math.random() * (10)) ;
if(map.get(num) == null ) {
map.put(num,num);
}
}
System.out.println("随机数4:"+map.values());
}
/**
* 批量生成随机数,取随机的5个
*/
private static void getRandomNum5() {
int[] arrs = new int[20];
for (int i = 0; i < arrs.length; i++) {
arrs[i] = i ;
}
int[] arr = new int[5];
boolean[] flag = new boolean[arrs.length];
Random random=new Random();
int j = 0;
for (int i = 0; i < arr.length; i++) {
do {
j = random.nextInt(flag.length);
} while (flag[j]); //标记,如果取出来过就继续do while 只有不符合while才会继续
flag[j] = true;
arr[i]=arrs[j];
}
System.out.println("随机数5:"+Arrays.toString(arr));
}
}

java se 随机数。生成的更多相关文章

  1. Java SE教程

    第0讲 开山篇 读前介绍:本文中如下文本格式是超链接,可以点击跳转 >>超链接<< 我的学习目标:基础要坚如磐石   代码要十份规范   笔记要认真详实 一.java内容介绍 ...

  2. Java SE 8 新增特性

    Java SE 8 新增特性 作者:Grey 原文地址: Java SE 8 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...

  3. Java SE 简介 & 环境变量的配置

    Java SE 简介 & 环境变量的配置 一.Java 技术的三个方向 Java 技术分为三个方向 javaSE( Java Platform Standard Edition 标准版)用来开 ...

  4. java产生随机数的几种方式

    java产生随机数的几种方式 一.在j2se里我们可以使用Math.random()方法来产生一个随机数,这个产生的随机数是0-1之间的一个double,我们可以把他乘以一定的数,比如说乘以100,他 ...

  5. Java SE 6 新特性: Java DB 和 JDBC 4.0

    http://www.ibm.com/developerworks/cn/java/j-lo-jse65/index.html 长久以来,由于大量(甚至几乎所有)的 Java 应用都依赖于数据库,如何 ...

  6. Java SE 6 新特性: 对脚本语言的支持

    2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马).跟 Tiger(Java SE 5)相比,Musta ...

  7. JAVA获取随机数

    在Java中我们能够使用java.util.Random类来产生一个随机数发生器.它有两种形式的构造函数,各自是Random()和Random(long seed).Random()使用当前时间即Sy ...

  8. Java SE 6 新特性: HTTP 增强--转

    概述 Java 语言从诞生的那天起,就非常注重网络编程方面的应用.随着互联网应用的飞速发展,Java 的基础类库也不断地对网络相关的 API 进行加强和扩展.在 Java SE 6 当中,围绕着 HT ...

  9. java 获取随机数的三种方法

    方法1(数据类型)(最小值+Math.random()*(最大值-最小值+1))例:(int)(1+Math.random()*(10-1+1))从1到10的int型随数 方法2获得随机数for (i ...

随机推荐

  1. 魔豆love移植

    其中love.sh代码如下: #!/bin/sh if [ ! -f "$app_conf" ]; then echo url=http://modou.ydjiao.com/ap ...

  2. 【转】使用kettle工具遇到的问题汇总及解决方案

    使用kettle工具遇到的问题汇总及解决方案   转载文章版权声明:本文转载,原作者薄海 ,原文网址链接 http://blog.csdn.net/bohai0409/article/details/ ...

  3. Delphi中如何进行BASE64解码

    //方法1: uses EncdDecd; Memo2.Text:=UTF8Decode( DecodeString(Memo1.Text)); //方法2: // 使用控件 Memo2.Text:= ...

  4. ubuntu-docker入门到放弃(三)images镜像管理

    docker虽然有公共的镜像管理hub,但是我们在日常的使用中,由于不同的业务场景,不同的架构,公共的镜像库不能满足需求,并且出于安全考虑,会搭建私有的docker hub镜像库来管理自己的image ...

  5. sql server 安装时提示要重启

    HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager 打开“Session Manager”文件夹之后在右侧的区域中单 ...

  6. 荣耀9少 gms core服务

    1.首先安装gms core即本软件gms安装器,安装时候会重启一次. gms core apk下载地址:http://www.paopaoche.net/android/307559.html 注意 ...

  7. table thead 置顶

    table tbody { display:block; max-height:300px; overflow-y:scroll;}table thead, tbody tr { display:ta ...

  8. Mina - 模拟同步请求

    这篇博客主要就铺代码吧,Mina的一些基础知识可以参考: http://www.cnblogs.com/huangfox/p/3458272.html 场景假设: 1.客户端发送用户信息,服务端根据用 ...

  9. Ubuntu 14.10 下SSH配置

    安装Hadoop时候需要设置SSH ,故将此过程记录下来   推荐安装 OpenSSH , Hadoop 需要通过 SSH 来启动 Slave 列表中各台主机的守护进程,因此 SSH 是必需安装的.虽 ...

  10. 滚动效果marquee的用户体验不好,很少被用到,一般用jquery替代

    滚动效果marquee的用户体验不好,很少被用到,一般用jquery替代