Java连载81-枚举类型,生成五个不重复的随机数,集合简介
一、枚举类型
1.枚举类型的格式就是enum+枚举类型的名称,可见下面的例子。
package com.bjpowernode.java_learning;
public class D81_1_ {
public static void main(String[] args) {
/**
* 需求:定义一个方法,该方法的作用是计算两个int类型数据的商
* 如果计算成功则该方法返回1,如果执行失败则该方法返回0
*
* 程序执行成功,但是该程序存在风险,分析:存在什么风险?
*
* 程序中的问题在编译阶段解决的,绝对不会放在运行期解决。所以以下程序可以引入枚举类型
*/
int a = 10;
int b = 0;
Result retValue = divide(a,b);
if(retValue==Result.SUCCESS) {
System.out.println("成功");
}else if (retValue==Result.FALL) {
System.out.println("失败");
}
}
public static Result divide(int a,int b) {
try {
int c = a/b;
}catch(Exception e) {
// return 0;
return Result.FALL;
}
// return 1;
return Result.SUCCESS;
}
}
//定义一个枚举类型
enum Result{
//成功和失败
//规范要求:大写
SUCCESS,FALL //有限的
}
//四季
enum Season{
SPRING,SUMMER,AUTUMN,WINTER
}

二、生成五个不重复的随机数
package com.bjpowernode.java_learning;
import java.util.Random;
public class D81_2_FiveNonredundantNumber {
public static void main(String[] args) {
/**
* 生成五个不重复的随机数
*/
Random r = new Random();
int[] a = new int[5];
int index = 0;
while(index<5) {
int temp = r.nextInt(6);
if(temp!=0 && !contains(a,temp)) {
a[index++] = temp;
System.out.println(temp);
}else {
System.out.println("重复了");
}
}
}
public static boolean contains(int[] a,int temp) {
for(int i=0;i<a.length;i++) {
if(a[i]==temp) {
return true;
}
}
return false;
}
}

三、 主要集合概述
1.Java集合中主要有三种重要的类型:
(1)List:是一个有序集合,可以放重复的数据;
(2)Set:是一个无序集合,不允许重复的数据;
(3)Map:是一个无序集合,集合中包含一个键对象,一个值对象,键对象不允许重复,值对象可以是重复的(例如:身份证号--姓名)
注意点:集合只能存储对象类型(Object,Integer,Long.......),不能存储基本数据类型(int,boolean......)
四、源码:
D81_1_EnumerationExample.java
D81_2_FiveNonredundantNumber.java
D81_3_UMLProgrammeSet.java
https://github.com/ruigege66/Java/blob/master/D81_1_EnumerationExample.java
https://github.com/ruigege66/Java/blob/master/D81_2_FiveNonredundantNumber.java
https://github.com/ruigege66/Java/blob/master/D81_3_UMLProgrammeSet.java
2.CSDN:https://blog.csdn.net/weixin_44630050
3.博客园:https://www.cnblogs.com/ruigege0000/
4.欢迎关注微信公众号:傅里叶变换,个人公众号,仅用于学习交流,后台回复”礼包“,获取大数据学习资料

Java连载81-枚举类型,生成五个不重复的随机数,集合简介的更多相关文章
- Java中的枚举类型详解
枚举类型介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义 ...
- 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错
原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...
- 全面解读Java中的枚举类型enum的使用
这篇文章主要介绍了Java中的枚举类型enum的使用,开始之前先讲解了枚举的用处,然后还举了枚举在操作数据库时的实例,需要的朋友可以参考下 关于枚举 大多数地方写的枚举都是给一个枚举然后例子就开始sw ...
- Java基础之枚举类型Enum的使用
Java基础之枚举类型Enum的使用 定义 public enum AccruedCleanEnum { SPREAD("1","发票"),OTHER(&quo ...
- Java基础_枚举类型
作用:让数据更简洁,更易读,增加代码可读性. 为了用1,2,3,4,5分别表示老师,学生,小组,班主任,后勤,可以直接设置一个变量,让roleType = 1,但这样写代码可读性差. 也可以定义一个成 ...
- java基础(十一) 枚举类型
枚举类型Enum的简介 1.什么是枚举类型 枚举类型: 就是由一组具有名的值的有限集合组成新的类型.(即新的类). 好像还是不懂,别急,咱们先来看一下 为什么要引入枚举类型 在没有引入枚举类型前,当我 ...
- 浅谈java中的枚举类型(转)
用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...
- java中的枚举类型
枚举类型是那些字段由一组固定常量组成的类型.常见的例子有:东南西北四个方向,星期几等. 所有枚举类型都隐式继承java.lang.Enum类型,因为java不支持多重继承,所以枚举不能继承其他任何类. ...
- Java学习笔记-枚举类型
枚举类型 枚举类型就是预先定义的一类常量集合,如一周的时间.水果的类型等.需要注意的几点内容如下: 定义枚举类时,Java默认继承java.lang.Enum,所以定义的枚举类不能继承其他类型: 枚举 ...
随机推荐
- Tomcat创建项目
查看项目信息 index.jsp默认首页 更新资源自动部署不用重启服务器,要用debug的方式启动 更新java代码和更新资源自动部署不用重启服务器,要用debug的方式启动
- asp.net + MVC5 入门完整教程一
原文链接:https://blog.csdn.net/qq_21419015/article/details/80311918原创凌霜残雪 最后发布于2018-05-14 17:26:30 阅读数 3 ...
- AcWing 905. 区间选点
//1.将每个区间按右端点从小到大排序 //2.从前往后依次枚举每个区间,如果当前区间中已经包含点,就直接跳过,否则,选择当前区间的右端点 //选右端点的话,可以尽可能的包含在多个区间里 #inclu ...
- testng如何实现并发
参考: https://www.cnblogs.com/znicy/p/6534893.html
- UVA 11520 Fill the Square(模拟)
题目链接:https://vjudge.net/problem/UVA-11520 这道题我们发现$n\leq 10$,所以直接进行暴力枚举. 因为根据字典序所以每个位置试一下即可,这样的复杂度不过也 ...
- DB技能数据库里把技能伤害调整
1. MagID 技能代号 2. MagName 技能名称 3. Effect Type 效果类型(使用技能时角色的动作效果) 4. Effect 效果(技能产生的动画效果) 5. Spell 每次耗 ...
- springboot引入Oracle依赖
最近学习spring boot,在网上找一些项目学习,有的项目引入了oracle驱动包,自己搭建一直不成功,百度发现说是权限问题无法下载. 然后参考下面博客终于解决:springboot引入Oracl ...
- 力扣MYSQL练习
176编写一个 SQL 查询,获取 Employee 表中第二高的薪水(Salary) . select IFNULL((SELECT distinct salary from employee or ...
- android WebView缩放时卡顿问题
问题描述: WebView 在双指缩放页面时会卡顿 解决过程:有试过打开硬件加速android:hardwareAccelerated="true" 还是没用,纠结了一天,最后屏蔽 ...
- HTTP状态码详解(下)
接上文 HTTP状态码详解(上). 详细的描述状态码之(3**) 300:被请求的资源有一系列可供选择的回馈信息,每个都有自己特定的地址和浏览器驱动的商议信息.用户或浏览器能够自行选择一个首选的地址进 ...