enum

java枚举

*爱你&永不变心* 提交于 2019-11-28 11:30:38
1、为何使用Java枚举 Java5之前没有enum的情况下,我们一般使用几个int常量表示枚举值(int枚举类型)或者string枚举类型 public static final ZOO_CAT=1 #表示小猫 public static final ZOO_CAT=2 #表示小狗 作为方法参数zooType是int类型 如 public void printZoo(int zooType){ } 这样的话 我们调用方法只要是int类型就行 ,没法控制方法调用的 安全性 其次 作为一个数字 如果打印到日志是个裸数字没有 可读性 为此 java5 产生了enum 固定且有限的类型都可以使用enum。 2、如何使用java枚举 package com.yangfei.test.meiju; public class EnumYf { enum ZOO{ CAT,DOG,PIG } public static void printZoo(ZOO zooType){ System.out.println("my name is " + zooType); } public static void main(String[] args){ printZoo(ZOO.DOG); } } View Code 如上 一个简单的例子 EnumYf中定义了一个动作枚举类型。 当一个枚举是公共的分类时

12.typescript-枚举

做~自己de王妃 提交于 2019-11-28 09:55:38
我怎么可以对你着了魔~ <----------------------------------------☺mizhiweixiao☺----------------------------------------> 1.用途和定义 (1)枚举用来限定取值在一定范围内的场景,比如一周有七天等。 (2)使用枚举可以定义一些有名字的常量。 (3)枚举使用关键字 enum 来定义 2.简单例子 1 enum Students{"weizeyang","weizexu","weixinyao","lizhihao"}; 2 3 console.log(Students["weizeyang"]); // 0 4 console.log(Students["lizhihao"]); // 3 从上面的栗子可以看出枚举值默认从0开始,依次递增。 同时枚举值和枚举名可以进行反向映射 1 enum Students{"weizeyang","weizexu","weixinyao","lizhihao"}; 2 3 console.log(Students[0]); // weizeyang 4 console.log(Students[3]); // lizhihao 在js文件中上面的栗子会被编译成 1 (function (Students) { 2 Students[Students[

enum不能被继承

[亡魂溺海] 提交于 2019-11-28 08:18:50
1、枚举类介绍 如果一个类的实例是有限且确定的,那么可以使用枚举类。比如:季节类,只有春夏秋冬四个实例。 枚举类使用enum进行创建,其实例必须从”第一行“开始显示写出。 enum Season{    SPRING,SUMMER,FALL,WINTER;//默认public static final,这都是Season类的对象。}    特点:     1、枚举类的对象默认都是public static final     2、枚举类的构造器都是private,所以无法在外部创建其实例,这也决定了枚举类实例的个数的确定性(写了几个就是几个)。     3、enum类不可被继承。                   4、enum类默认extends java.lang.Enum,所以无法再继承其他类 2、遇到的问题 enum类默认被final修饰的情况下,是无法有子类的。但是在《疯狂Java讲义》中是这么说的: 那么,问题来了: enum Season{ // SPRING,SUMMER,FALL,WINTER;//默认public static final,这都是Season类的对象。 SPRING{ public void show(){ System.out.println("I'm Spring"); } },SUMMER,FALL,WINTER; private

理解枚举替代实现的缺陷

允我心安 提交于 2019-11-28 08:11:27
Python3.4以前并不提供枚举类型,于是人们利用Python的动态性这个特征,想出了枚举的各种替代实现方式。 使用类属性 class Seasons : Spring , Summer , Autumn , Winter = range ( 4 ) print ( Seasons . Summer ) # 1 借助函数 def enum ( * args , ** kwargs ) : return type ( "Enum" , ( object , ) , dict ( zip ( args , range ( len ( args ) ) ) , ** kwargs ) ) Seasons = enum ( "Spring" , "Summer" , "Autumn" , "Winter" ) print ( Seasons . Summer ) # 1 使用 collections.namedtuple from collections import namedtuple Seasons = namedtuple ( 'Seasons' , 'Spring Summer Autumn Winter' ) . _make ( range ( 4 ) ) print ( Seasons . Summer ) # 1 显然,这些替代实现有其不合理的地方。 允许枚举值重复

springboot集成swgger2出现No enum constant org.springframework.web.bind.annotation.RequestMethod.Post错误解决

自古美人都是妖i 提交于 2019-11-28 07:54:56
错误如下: 错误原因:httpMethod 中POST写成了Post @ApiOperation(value = "新建人脸库",notes = "新建人脸库", httpMethod = "Post") 这里最简单的办法就是改过来喽! 参考链接: https://blog.csdn.net/qq_35623773/article/details/84898578 来源: https://blog.csdn.net/qq_39073684/article/details/100039542

设计模式 - 由浅入深分析单例模式

谁都会走 提交于 2019-11-28 07:49:53
单例模式(Singleton Patten):确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例(Ensure a class has only one instance, and provide a global point of access to it)。 Singleton类称为单例类,通过使用private的构造函数确保了在一个应用中只产生一个实例,并且是自行实例化的(在Singleton中自己使用new Singleton())。 1.单例入门 饿汉式: 在类加载时就创建对象实例,而不管实际是否需要创建。 public class Singleton { private static final Singleton singleton = new Singleton(); private Singleton() { } public static Singleton getInstance() { return singleton; } } 懒汉式: 只有调用getInstance的时候,才实例化对象。 public class Singleton { private static Singleton singleton; private Singleton() { } public static Singleton getInstance() { if

如何选择合适的MySQL数据类型

浪尽此生 提交于 2019-11-28 07:14:51
MySQL数据类型选择 一 .选择原则 更小的通常更好 :一般情况下选择可以正确存储数据的最小数据类型。越小的数据类型通常更快,占用磁盘,内存和CPU缓存更小。 简单就好 :简单的数据类型的操作通常需要更少的CPU周期。例如:整型比字符操作代价要小得多,因为字符集和校对规则(排序规则)使字符比整型比较更加复杂。 尽量避免NULL :尽量制定列为NOT NULL,除非真的需要NULL类型的值。因为可能为NULL列使得索引,索引统计和值比较都更复杂。可为NULL的列会使用更多的存储空间,在MySQL里也需要特殊处理。 二.选择具体数据类型 在选择列的数据类型时需要先选定合适的大类型,如:数字,字符串,时间等。 整数类型 有两种类型的数字:整数和实数。如果需要存储整数,可以选择一下集中数据类型: 数据类型 长度/字节 范围 说明 TINYINT 1 -2^7—2^7-1 整数类型可选UNSIGND属性 SMALLINT 2 -2^15—2^15-1 表示不允许为负值 MEDIUMINT 3 -2^23—2^23-1 这大致可以使整数上限提高一倍 INT 4 -2^31—2^31-1 例如UNSIGNED可以使TINYINT BIGINT 8 -2^63—2^63-1 存储的范围是0—255 *实数类型 实数是带有小数部分的数字。然而它们不只是存储小数部分

c++11 enum class用法

爱⌒轻易说出口 提交于 2019-11-28 07:13:51
使用过的一个enum class的用法: enum class EModel : int { Model1, Model2, Model3, Other = 4, }; EModel SRiverGetTorqueModelType(const int typeCount) { switch (typeCount) { case 0: return EModel::Model1; break; case 1: return EModel::Model3; break; case 2: return EModel::Model2; break; default: return EModel::Model1; } } int typeCount = xxx; if (EModel::Model1 == SRiverGetTorqueModelType(typeCount)) { } 来源: https://www.cnblogs.com/butterflybay/p/11398241.html

Swagger 入门使用

痞子三分冷 提交于 2019-11-28 03:58:47
概述 使用 Swagger 解决什么问题, 怎么使用 Swagger, 如何规范 go-swagger 的使用. 背景介绍 为了解决与后端对数据的的强耦合, 使用 HTTP 接口进行解耦. 而 Swagger 一方面可以非常友好的对外展示接口, 文档即接口, 另 一方面可以使用 go-swagger 自动生成部分 server 端代码, 快速实现接口开发. 方便以后可以快速开发 HTTP 服务接口 主要内容 简介 Swagger 是一个简单但功能强大的 API 表达工具。 Swagger 使用 OpenAPI 规范(试图通过定义一种用来描述API格式或API定义的语言,来规范RESTful服务开发过程). 使用 Swagger 生成 API,我们可以得到交互式文档,自动生成代码的 SDK 以及 API 的发现特性等。 wagger 主要包括三部分 Swagger API Spec,描述 Rest API 的语言。Swagger UI,将 Swagger API Spec 以 HTML 页面展现出来的模块。Swagger Editor,Swagger API Spec 的编辑器 为什么使用 swagger 主要是因为工作的核心在实时服务方面. 一方面: swagger能够帮助我们节省编写接口文档的时间,提高我们开发时的效率. 另一方面: 保证文档的即时性,准确性以及一致性,

使用枚举enum分类存放常量

空扰寡人 提交于 2019-11-28 01:28:13
定义一个java类,在类中定义多个枚举 /** * 常量类(枚举) * * @author GaoJinShan */ public class Constants { /** * 接口状态码 * * @author GaoJinShan */ public enum ResultCode { UNKNOWN_ERROR ( "-1" , "未知错误" ) , SUCCESS ( "200" , "成功" ) , PARAM_ERROR ( "201" , "参数不合法" ) , DATABASE_ERROR ( "202" , "数据库异常" ) , EXIST ( "403" , "已存在" ) ; private String code ; private String message ; ResultCode ( String code , String message ) { this . code = code ; this . message = message ; } public String getCode ( ) { return code ; } public String getMessage ( ) { return message ; } } /** * 网络类型 * * @author GaoJinShan */ public enum