import java.util.Random;

代码演示:

package com.lbj.javase.random;import java.util.Random;public class RandomTest01 {public static void main(String[] args) {//创建随机数对象Random random=new Random();int num1=random.nextInt();System.out.println(num1);//nextInt翻译为:下一个int类型的数据是101,表示只能取到100,不包括101int num2=random.nextInt(101);System.out.println(num2);}
}

第一次运行结果:

335893798
64

第N次运行结果:

-2024089022
53

题目:

设置一个5长度的一维数组,然后往里面存入随机数据,要求:随机的数据不能在数组中重复

代码演示:

package com.lbj.javase.random;import java.util.Arrays;
import java.util.Random;public class RandomTest02 {public static void main(String[] args) {//准备一个长度为5的一维数组,动态创建的数组里面默认值都是0int[] arr=new int[5];//为了避免扰乱数组中的0是数组的还是自动生成的随机数的0,我们用循环赋值-1for (int i = 0; i <arr.length; i++) {arr[i]=-1;}//创建Random对象Random random=new Random();//循环,生成随机数int index=0;while (index<arr.length){int num=random.nextInt(101);//判断随机数是否重复if (!contains(arr,num)){arr[index]=num;index++;}}//遍历存了数据的数组for (int i = 0; i <arr.length; i++) {System.out.println(arr[i]);}}/**** @param x 数组* @param y 元素* @return true表示包含,false表示不包含*///单独写一个方法,这个方法专门用来判断数组中是否包含某个元素public static boolean contains(int[] x,int y){/* 这个方案有bug,因为排序//对数组进行升序Arrays.sort(x);//二分法查找//  >=0证明存在int index=Arrays.binarySearch(x,y);return index>=0;*/for (int i = 0; i <x.length; i++) {if(x[i]==y){return true;}}return false;}
}

JAVA进阶教学之(产生随机数)相关推荐

  1. JAVA进阶教学之(集合)

    目录 1.集合概述 2.集合存储的数据类型 3.不同的集合,底层都会对应不同的数据结构 4.集合继承结构图(部分接口和类) 5.Collection接口中常用的方法 6.Collection 集合迭代 ...

  2. JAVA进阶教学之(IO流)

    目录 1.什么是IO流 2.流的分类 3.流的四大家族首领 4.java.io.*包下需要掌握的16个流 5.FileInputStream的实用方法 6.FileOutputStream的方法 7. ...

  3. JAVA进阶教学之(String类的常用方法)

    接下来我们进入的学习章程,就是可以通过查阅帮助文档进行实际的应有 1. char charAt(int index) 返回指定索引的 char价值. 代码示例: public class String ...

  4. JAVA进阶教学之(序列化和反序列化)

    目录 1.序列化Serialize和反序列化的概念 2.序列化和反序列化的代码演示: 3.序列化多个对象(序列化集合) 4.transient关键字将部分属性不参与序列化 1.序列化Serialize ...

  5. JAVA进阶教学之(foreach)

    foreach: 概念:就是for循环的一个增强版,可以方便程序员对于数组的直接操作,不用考虑数组下标的情况下进行遍历输出 代码演示: package com.lbj.javase.collectio ...

  6. JAVA进阶教学之(泛型)

    泛型 引言: 泛型:泛型允许程序员在编写代码时使用一些以后才指定的类型,在实例化时作为参数指明这些类型 人话:泛型对规定范围产生约束,约束后只能存储泛型指定的类型 诞生:JDK5.0以后 作用:泛型旨 ...

  7. JAVA进阶教学之(数字格式化和高精度数字)

    数字的格式化方便我们对于统计数字的时候便于区分 代码演示: new DecimalFormat("###,###.##"); package com.lbj.javase.numb ...

  8. JAVA进阶教学之(Date日期的处理)

    两个类: Date类:获取系统当前日期,属于java.util.Date包内 SimpleDateFormat类:将当前日期进行格式化处理,yyy-MM-dd HH:mm:ss SSS 代码演示: D ...

  9. JAVA进阶教学之(8种包装类)

    代码演示: public class IntegerTest01 {public static void main(String[] args) {//把100这个数字经过构造方法包装成对象MyInt ...

最新文章

  1. Hadoop简要介绍
  2. 神经网络中参数数量的计算
  3. python上机实验报告读取文件_Python程序设计实验报告:实验八 文件
  4. 计组-控制器的功能和工作原理
  5. c 用mysql导出xls文件怎么打开_mysql——xls表格的导出和导入(重点)
  6. Linux系统【一】CPU+MMU+fork函数创建进程
  7. 张平文当选美国工业与应用数学学会会士
  8. python设置label的位置_Python3 tkinter基础 Label pack 设置控件在窗体中的位置
  9. yolov2训练_Yolov2损失函数细节研究
  10. 全局替换字体,开源库更方便!!! 1
  11. Php 类似coffeescript,十个CoffeeScript一行程序——震惊你的小伙伴
  12. mysql数据库多表查询实例
  13. 获取网站图标icon
  14. 1+1备份和1:1冗余备份区别
  15. Relatively Prime Graph CodeForces - 1009D
  16. 数学符号(取底、取顶、不大于、不小于)和标准假彩色合成
  17. 创建一个最简单的win32应用程序
  18. JavaWeb-SpringBoot 学习笔记(1) class path resource [Beans.xml] cannot be opened because it does not exis
  19. CreateFont(MFC)字体设计
  20. java计算机毕业设计基于ssm的志愿者活动招募网站

热门文章

  1. c++ tinyxml2 解析xml小坑
  2. mysql 移植ucos_基于STM32F767的UCOSIII移植学习
  3. 行程单图片python预处理_GCC编译过程(预处理-gt;编译-gt;汇编-gt;链接)
  4. visual studio 调试 定义debug常量_有趣的阅读 12个提高生产力的Visual Studio调试技巧...
  5. linux源码下载阿帕奇,Ubuntu 12.04下源码安装Apache
  6. matlab——图像细化
  7. Python语言数据类型-----数字和字符串
  8. struts2+ajax+json使用实例
  9. Guava入门~Strings
  10. EDA风格与Reactor模式