案例一 星期:

星期的枚举:enum class 类名 {}

package cn.kotlin.kotlin_oop09

/**
* 定义星期的枚举类
*/
enum class MyEnumerateWeek { 星期一,
星期二,
星期三,
星期四,
星期五,
星期六,
星期日 }

描述处理星期的对象,里面有处理星期的方法:

package cn.kotlin.kotlin_oop09

class MyEnumerateEngin() {

    /**
* 定义处理星期的方法
*/
fun doWeekAction(myEnumerateWeek: MyEnumerateWeek) {
when(myEnumerateWeek) {
MyEnumerateWeek.星期一 ->
{
println("今天是星期一,大家都很忙碌,大家会开会,可能会加班,因为周一特殊....")
}
MyEnumerateWeek.星期二 ->
{
println("今天是星期二,忙碌降低了,应该不会加班....")
}
MyEnumerateWeek.星期三 ->
{
println("今天是星期三,如果不是外包公司的话 应该会打羽毛球或者其他运动.....")
}
MyEnumerateWeek.星期四 ->
{
println("今天是${myEnumerateWeek},明天就是周五了,有点激动....")
}
MyEnumerateWeek.星期五 ->
{
println("今天是${myEnumerateWeek},明天后天不上班,真开心....")
}
MyEnumerateWeek.星期六 ->
{
println("今天是${myEnumerateWeek},玩的不亦乐乎...")
}
MyEnumerateWeek.星期日 -> {
println("今天是${myEnumerateWeek},稍微玩了下,由于明天要开始上班了,烦躁....")
}
}
} }

测试的main方法:

package cn.kotlin.kotlin_oop09

fun main(args: Array<String>) {

    var myEnumerateEngin = MyEnumerateEngin()

    // 枚举值 周五
var myEnumerateWeek = MyEnumerateWeek.星期日 myEnumerateEngin.doWeekAction(myEnumerateWeek)
}

打印的结果:



案例二 性别:

人的性别枚举:

package cn.kotlin.kotlin_oop09

/**
* 定义人的性别 枚举类
*/
enum class MyEnumPersonSex {
男, 女
}

处理人的性别方法:

package cn.kotlin.kotlin_oop09

class MyEnumerateEngin() {

    /**
* 定义处理星期的方法
*/
fun doSexAction(myEnumPersonSex: MyEnumPersonSex) { when(myEnumPersonSex) { MyEnumPersonSex.男 ->
println("张无忌的性别是${myEnumPersonSex}") MyEnumPersonSex.女 ->
print("小昭的性别是${myEnumPersonSex}")
} } }

main测试方法:

package cn.kotlin.kotlin_oop09

fun main(args: Array<String>) {

    var myEnumerateEngin = MyEnumerateEngin()

    // 定义性别的枚举值
var myEnumPersonSex = MyEnumPersonSex.男 myEnumerateEngin.doSexAction(myEnumPersonSex) }

执行结果:


枚举的好处有:

  1.使程序更容易编写和维护

      2.防止用户乱输入,是一种约束

Android-Kotlin-枚举enum的更多相关文章

  1. Android中是否推荐使用枚举Enum

    一.Enum的产生 Java1.5中引入了枚举的语法,包括Enum,EnumSet,EnumMap等.其中Enum就是我们在C或C++中见过的枚举类型,但是Java中的枚举又比C或C++中的枚举更成熟 ...

  2. 关于Java中枚举Enum的深入剖析

    在编程语言中我们,都会接触到枚举类型,通常我们进行有穷的列举来实现一些限定.Java也不例外.Java中的枚举类型为Enum,本文将对枚举进行一些比较深入的剖析. 什么是Enum Enum是自Java ...

  3. MySQL字段之集合(set)枚举(enum)

    MySQL字段之集合(set)枚举(enum) (2008-12-23 13:51:23) 标签:it  分类:MySQL 集合 SET mysql> create table jihe(f1 ...

  4. 枚举 enum

    typedef enum : NSUInteger { <#MyEnumValueA#>, <#MyEnumValueB#>, <#MyEnumValueC#>, ...

  5. 枚举enum学习小记

    参考文献: [1]C++程序设计语言(特别版), 裘宗燕译, 机械工业出版社 [2]C++ Primer (3rd Ed.), S.B. Lippman and J. Lajoie, 人民邮电出版社 ...

  6. Java 枚举(enum) 详解7种常见的用法

    Java 枚举(enum) 详解7种常见的用法 来源 https://blog.csdn.net/qq_27093465/article/details/52180865 JDK1.5引入了新的类型— ...

  7. Python 枚举 enum

    Python 枚举 enum enum 标准模块在 3.4 版本才可以使用,3.3 以下版本需要独立安装:https://pypi.python.org/pypi/enum34#downloads,官 ...

  8. 【转】结构struct 联合Union和枚举Enum的细节讨论

    结构struct 联合Union和枚举Enum的细节讨论 联合(Union)是一种构造数据类型,它提供了一种使不同类型数据类型成员之间共享存储空间的方法,同时可以实现不同类型数据成员之间的自动类型转换 ...

  9. 枚举Enum和常量0之间的恩怨

    1,任何为0的常量表达式都能隐式的转换成枚举Enum. 对于这一点,在程序中没少吃苦头.特别是对于函数重载的情况,往往让人一头雾水. 看看下面的代码(摘自MSDN),你能猜到输出吗? public e ...

  10. C++和Java中枚举enum的用法

    在C++和java中都有枚举enum这个关键字,但是它们之间又不太一样.对于C++来说,枚举是一系列命名了的整型常量,而且从枚举值转化为对应的整型值是在内部进行的.而对于Java来说,枚举更像一个类的 ...

随机推荐

  1. http协议(四)http常用状态码

    一:http状态码 表示客户端http请求的返回结果.标记服务器端的处理是否正常.通知出现的错误等工作 状态码的类别如下: http状态码种类繁多,大概有60多种,实际上经常使用的只有14种,下面为一 ...

  2. where_1

    (二)WHERE //where不单独使用,与match,optional match,start,with搭配 where 与match,optional match 一起用,表示约束 where ...

  3. 2018年设计师都在用的PS切图插件--摹客iDoc

    终于找到你,我梦寐以求的PS切图插件.曾几何时,设计师在完成设计稿之后高效的输出标注切图一直是设计师的噩梦.为什么这么说呢?开发要的那么多尺寸,我到底该怎么切图?iPhone的版本已经不少了,更别提安 ...

  4. 基于centos6.5 hadoop 集群搭建

    1.修改Linux主机名2.修改IP3.修改主机名和IP的映射关系 ######注意######如果你们公司是租用的服务器或是使用的云主机(如华为用主机.阿里云主机等) /etc/hosts里面要配置 ...

  5. c#中将字符串转换成带2位小数的浮点数

    今天遇到一个展示酒店价格的需求,觉得是要显示成“¥0.00”样式的,就做个小随笔,将字符串装换成带2位小数的浮点数 代码如下 "; string amount = string.Empty; ...

  6. python包与模块导入

    一 .module 通常模块为一个文件,直接使用import来导入就好了.可以作为module的文件类型有".py".".pyo".".pyc&quo ...

  7. Linux学习笔记:JDK安装

    系统为CentOS 7,安装Oracle jdk1.8 卸载系统自带的Openjdk(若无可跳过这一步,可以通过 java -version 查看),步骤是:查找Openjdk,卸载Openjdk r ...

  8. 使用Python完成表格自动输入

    看了看<Python编程快速上手>,写了个小脚本完成12306登录数据的自动输入.如下: 1 import webbrowser 2 import pyautogui 3 import t ...

  9. C语言基础第四次作业

    题目7-2,九九乘法表 1.实验代码: #include<stdio.h> int main() { int N, i, j, q; scanf("%d",&N ...

  10. hdu 6073

    题意: 给出一个二部图,U.V分别是二部图的两个点集,其中,U中每个点会有两条边连到V中两个不同的点. 完美匹配定义为:所有点都成功匹配. 思路:已知一定是完美匹配了呀(也一定存在),我们先把度数为一 ...