java se 随机数。生成
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 随机数。生成的更多相关文章
- Java SE教程
第0讲 开山篇 读前介绍:本文中如下文本格式是超链接,可以点击跳转 >>超链接<< 我的学习目标:基础要坚如磐石 代码要十份规范 笔记要认真详实 一.java内容介绍 ...
- Java SE 8 新增特性
Java SE 8 新增特性 作者:Grey 原文地址: Java SE 8 新增特性 源码 源仓库: Github:java_new_features 镜像仓库: GitCode:java_new_ ...
- Java SE 简介 & 环境变量的配置
Java SE 简介 & 环境变量的配置 一.Java 技术的三个方向 Java 技术分为三个方向 javaSE( Java Platform Standard Edition 标准版)用来开 ...
- java产生随机数的几种方式
java产生随机数的几种方式 一.在j2se里我们可以使用Math.random()方法来产生一个随机数,这个产生的随机数是0-1之间的一个double,我们可以把他乘以一定的数,比如说乘以100,他 ...
- Java SE 6 新特性: Java DB 和 JDBC 4.0
http://www.ibm.com/developerworks/cn/java/j-lo-jse65/index.html 长久以来,由于大量(甚至几乎所有)的 Java 应用都依赖于数据库,如何 ...
- Java SE 6 新特性: 对脚本语言的支持
2006 年底,Sun 公司发布了 Java Standard Edition 6(Java SE 6)的最终正式版,代号 Mustang(野马).跟 Tiger(Java SE 5)相比,Musta ...
- JAVA获取随机数
在Java中我们能够使用java.util.Random类来产生一个随机数发生器.它有两种形式的构造函数,各自是Random()和Random(long seed).Random()使用当前时间即Sy ...
- Java SE 6 新特性: HTTP 增强--转
概述 Java 语言从诞生的那天起,就非常注重网络编程方面的应用.随着互联网应用的飞速发展,Java 的基础类库也不断地对网络相关的 API 进行加强和扩展.在 Java SE 6 当中,围绕着 HT ...
- java 获取随机数的三种方法
方法1(数据类型)(最小值+Math.random()*(最大值-最小值+1))例:(int)(1+Math.random()*(10-1+1))从1到10的int型随数 方法2获得随机数for (i ...
随机推荐
- VUE简单组件通信
[x] 1.prop组件通信 1.简单理解 2.多层嵌套 [x] 2.使用ref进行组件通信 [x] 3.$emit组件通信 1.prop组件通信 1.简单理解 有点类似于应式的感觉,我不管你要不要只 ...
- url参数 加密
加密 url +? btoa(param) 解密 url + ?atob(param)
- LeetCode——13. Roman to Integer
一.题目链接:https://leetcode.com/problems/roman-to-integer/ 二.题目大意: 给定一个罗马数字,返回它的整数形式. 三.题解: 这道题与12题恰好相反, ...
- windows cmd下ssh连接免密码问题解决
windows 7 cmd下 ssh -T username@serverip 免密码连接成功 有的同学在windows下开发,并且在windows下安装了git for windows,这些资源已经 ...
- C++进阶--公有继承的二元性
//########################################################################### /* * 公有继承的两元性 * * - 接口 ...
- Mina - 模拟同步请求
这篇博客主要就铺代码吧,Mina的一些基础知识可以参考: http://www.cnblogs.com/huangfox/p/3458272.html 场景假设: 1.客户端发送用户信息,服务端根据用 ...
- nodeJS安装及npm设置淘宝镜像
node.js安装 下载node.js安装包:https://nodejs.org/en/download/,下载相应版本的node.js. 需注意,在window中,node的安装目录中,最好不要有 ...
- 【并发】基于 @Async和 CompletableFuture 实现并发异步操作
参考链接:Spring官方示例 User.java package hello; import com.fasterxml.jackson.annotation.JsonIgnorePropertie ...
- 【spring boot】映射properties文件属性--到Java对象
描述 将*.properties中的内容映射到java对象中: 主要步骤 添加 @Component 注解: 使用 @PropertySource 注解指定配置文件位置: 使用 @Configurat ...
- Scala的内建控制结构
Scala中的内建控制机构仅有if.while.for.try.match和函数调用.虽然Scala的基础控制结构少,但也足以支持指令式语言里所有的实质内容.因为它们都能产生值,有助于缩短代码. 程序 ...