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. 安装plsql developer

    需求:要连接oracle数据库,不想在本地安装oracle,太大,又占内存,所以用plsql developer.. 在网上看了很多博客,妈呀,被毒的不清,一直提示初始化失败,就是那个oci,dll ...

  2. nusaop 关于webService

    用PHP和NuSoap来建立SOAP服务器非常容易.基本上,你只要写出你想要暴露给你的Web services的函数,然后用NuSoap去注册它们就可以了.OK,另外还需要两步才能完成PHP SOAP ...

  3. MySQL 5.7 优化SQL提升100倍执行效率的深度思考(GO)

    系统环境:微软云Linux DS12系列.Centos6.5 .MySQL 5.7.10.生产环境,step1,step2是案例,精彩的剖析部分在step3,step4. 1.慢sql语句大概需要13 ...

  4. overflow标签

    有时父标签设置了固定的宽高,但子标签把父标签给撑开了,就要在父标签里加一个overflow标签,等于hidden超出的地方隐藏,等于auto超出的地方隐藏,并且多个滚动条 <div style= ...

  5. Debian下Netbeans编辑器字体锯齿现象

    第一步:到你netbeans安装目录下的etc目录下,找到netbeans.conf文件,打开准备编辑:第二步:在netbeans_default_options后面加上-J-Dawt.useSyst ...

  6. ALGO-143_蓝桥杯_算法训练_字符串变换

    问题描述 相信经过这个学期的编程训练,大家对于字符串的操作已经掌握的相当熟练了.今天,徐老师想测试一下大家对于字符串操作的掌握情况.徐老师自己定义了1,,,,5这5个参数分别指代不同的5种字符串操作, ...

  7. C++进阶--静态初始化的惨败

    /* Initialization Fiasco 一个会使程序崩溃的细微的问题 */ // 不同文件的编译顺序是不确定的 // 如果一个文件依赖另一个文件的对象先初始化,可能出现问题 // 解决方法: ...

  8. C++进阶--编译器自动生成的类函数

    //############################################################################ /* 在C++ 03标准下 在没有显式定义 ...

  9. 【问题解决】docker中创建volume时,无访问权限

    挂载宿主机已存在目录后,在容器内对其进行操作,报"Permission denied". 可通过两种方式解决: 1> 关闭selinux. 临时关闭:# setenforce ...

  10. Hadoop概念学习系列之搭建(windows)Eclipse/MyEclipse远程操作(Linux上)hadoop2.2.0/hadoop2.6.0 出错集(三十五)

    本博文,是在http://blog.csdn.net/u010911997/article/details/44099165  的基础上.感谢原博主! 问题1:在DFS Lcation 上不能多文件进 ...