一、枚举类型

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-枚举类型,生成五个不重复的随机数,集合简介的更多相关文章

  1. Java中的枚举类型详解

    枚举类型介绍 枚举类型(Enumerated Type) 很早就出现在编程语言中,它被用来将一组类似的值包含到一种类型当中.而这种枚举类型的名称则会被定义成独一无二的类型描述符,在这一点上和常量的定义 ...

  2. 【转】Java基础笔记 – 枚举类型的使用介绍和静态导入--不错

    原文网址:http://www.itzhai.com/java-based-notes-introduction-and-use-of-an-enumeration-type-static-impor ...

  3. 全面解读Java中的枚举类型enum的使用

    这篇文章主要介绍了Java中的枚举类型enum的使用,开始之前先讲解了枚举的用处,然后还举了枚举在操作数据库时的实例,需要的朋友可以参考下 关于枚举 大多数地方写的枚举都是给一个枚举然后例子就开始sw ...

  4. Java基础之枚举类型Enum的使用

    Java基础之枚举类型Enum的使用 定义 public enum AccruedCleanEnum { SPREAD("1","发票"),OTHER(&quo ...

  5. Java基础_枚举类型

    作用:让数据更简洁,更易读,增加代码可读性. 为了用1,2,3,4,5分别表示老师,学生,小组,班主任,后勤,可以直接设置一个变量,让roleType = 1,但这样写代码可读性差. 也可以定义一个成 ...

  6. java基础(十一) 枚举类型

    枚举类型Enum的简介 1.什么是枚举类型 枚举类型: 就是由一组具有名的值的有限集合组成新的类型.(即新的类). 好像还是不懂,别急,咱们先来看一下 为什么要引入枚举类型 在没有引入枚举类型前,当我 ...

  7. 浅谈java中的枚举类型(转)

    用法一:常量 在JDK1.5 之前,我们定义常量都是: public static fianl.... .现在好了,有了枚举,可以把相关的常量分组到一个枚举类型里,而且枚举提供了比常量更多的方法. p ...

  8. java中的枚举类型

    枚举类型是那些字段由一组固定常量组成的类型.常见的例子有:东南西北四个方向,星期几等. 所有枚举类型都隐式继承java.lang.Enum类型,因为java不支持多重继承,所以枚举不能继承其他任何类. ...

  9. Java学习笔记-枚举类型

    枚举类型 枚举类型就是预先定义的一类常量集合,如一周的时间.水果的类型等.需要注意的几点内容如下: 定义枚举类时,Java默认继承java.lang.Enum,所以定义的枚举类不能继承其他类型: 枚举 ...

随机推荐

  1. machinekey相关信息

    在session共享时必须将web.config中的machineKey配置为相同的加解密算法 <system.web> <machineKey decryptionKey=&quo ...

  2. C# MVC扩展方法

    控制方法 : 在不修改类原来代码的情况下,给类扩展方法 https://www.cnblogs.com/jxsimon/articles/5043654.html https://www.cnblog ...

  3. Virtual Judge POJ 2251 Dungeon Master

    三维数组加宽搜 #include <stdlib.h> #include <string.h> #include <stdio.h> ; int c, k, h; ...

  4. 不能暴露服务给外部环境,因为nginx-ingress-control启动失败

    不能暴露服务给外部环境,因为nginx-ingress-control启动失败 待办 rancher 和k8s中的端口冲突,nginx-ingress-control都需要使用80端口 以及443端口 ...

  5. bzoj3744: Gty的妹子序列 (BIT && 分块)

    强制在线的区间询问逆序对数 如果不是强制在线 就是可以用莫队乱搞啦 强制在线的话 用f[i][j]记录第i块到第j个点之间的逆序对数 用s[i][j]记录前i块中小于等于j的数字个数 离散化一下 BI ...

  6. Apache Kafka(十一)Topic 的配置与组成

    Topic 的配置与组成 之前我们仅主要介绍了Kafka Producer与Kafka Consumer 的相关配置,而未详细介绍过有关topic的配置.Topic的配置在Kafka 使用中也至关重要 ...

  7. java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException

    运行项目时出现java.lang.NoClassDefFoundError: org/apache/commons/lang/exception/NestableRuntimeException时,只 ...

  8. SpringBoot获取http请求参数的方法

    SpringBoot获取http请求参数的方法 原文:https://www.cnblogs.com/zhanglijun/p/9403483.html 有七种Java后台获取前端传来参数的方法,稍微 ...

  9. 后端分页神器,mybatis pagehelper 在SSM与springboot项目中的使用

    mybatis pagehelper想必大家都耳熟能详了,是java后端用于做分页查询时一款非常好用的分页插件,同时也被人们称为mybatis三剑客之一,下面 就给大家讲讲如何在SSM项目和sprin ...

  10. vue axios使用

    <!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...