一、枚举类型

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. vue mvvm原理与简单实现 -- 上篇

    Object.defineProperty介绍-- let obj = {}; Object.defineProperty(obj,'school',{ configurable : true, // ...

  2. layui下拉框数据过万渲染渲染问题解决方案

    方案一:layui下拉框分页插件 https://fly.layui.com/jie/29002/ 此插件我用了下浏览器缓存有问题,而且当下拉框数据量过万后,会一直渲染不出来,期待后期作者优化 如图下 ...

  3. spring(三):DefaultListableBeanFactory

  4. dea创建Maven工程用c3p0连接数据库报错java.sql.SQLException: Connections could not be acquired from the underlying

    idea   java.sql.SQLException: Connections could not be acquired from the underlying database! 转载自:ht ...

  5. 每日扫盲:eclipse快捷键 包括查找类、方法、变量汇总

    [Ct rl+T] 搜索当前接口的实现类 1. [ALT +/]    此快捷键为用户编辑的好帮手,能为用户提供内容的辅助,不要为记不全方法和属性名称犯愁,当记不全类.方法和属性的名字时,多体验一下[ ...

  6. Oracle空表的分配segment

      1.查询相关参数deferred_segment_creation select * from v$parameter where name='deferred_segment_creation' ...

  7. 微信小程序 (全局配置和页面配置)

    全局配置 app.json 文件用来对微信小程序进行全局配置. 一.配置页面路径 二.window 配置全局默认的窗口 navigationBarTextStyle:导航栏的标题颜色 navigati ...

  8. vue 无法热替换/热更新

    参考了小伙伴的解决办法: 1.https://blog.csdn.net/win7583362/article/details/65443291 虽然我并不是用对方的方法解决的. 依然还是建议大家打开 ...

  9. GCC的编译过程和链接

    GCC编译过程 一个C/C++文件要经过预处理(preprocessing).编译(compilation).汇编(assembly).和连接(linking)才能变成可执行文件. gcc的常用选项 ...

  10. C++之Boost准标准库配置

    下载安装 进入官网下载地址:https://www.boost.org/users/download/ 本教程直接下载官方已编译库,不涉及源代码手动编译 点击官方编号好的链接,然后进入一个下载地址:h ...