案例一 星期:

星期的枚举: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. [Groovy] 创建Excel,追加Excel

    package ScriptLibrary import java.awt.Color import java.awt.GraphicsConfiguration.DefaultBufferCapab ...

  2. jquery纯数字验证

    $(document).ready(function(){  //纯数字验证,只让输入数字,比如-号等都不然输入.  $('#user-defined').unbind();  $('#user-de ...

  3. 最佳运动类APP-Keep设计与欣赏

    运动类APP是大家手机中必备的一款软件.如果说谁手机里没有任何涉及运动类APP,那只能说真的与时代脱轨了.近些年随着物质生活条件的改善,人们开始越来越重视自己的身体,所以也越来越多的人会进行身体锻炼. ...

  4. iframe高度自适应实现方案

    iframe高度动态自适应,一直是个头疼的问题,今天我们从事件监听这个角度,来实现iframe高度实时更新. 方案一:监听iframe体的点击事件 <iframe src="casca ...

  5. POJ-3252 Avenger

    题意:在区间中,他们化成2进制的数的0的个数大于等于1的数有多少个. 思路:我们需要记录上一次0和1的个数,此外我们还要特别注意一下前导0. 如果前面全是0的时候我们就要注意下一位是不是还是0,如果一 ...

  6. python之数据库内置方法以及pymysql的使用

    一.mysql内置方法 1)视图的概念和用法 .什么是视图 视图就是通过查询得到一张虚拟表,然后保存下来,下次用的直接使用即可 .为什么要用视图 如果要频繁使用一张虚拟表,可以不用重复查询 .如何用视 ...

  7. 第15章 上下文管理器和else块

    #<流流畅的Python>第15章 上下文管理器和else块 #15.1 先做这个,再做那个:if语句之外的else块 #else子句不仅能在if语句中使用,还能在for.while和tr ...

  8. java常用设计模式十二:命令模式

    一.概述 定义:命令(Command)模式又叫作动作(Action)模式或事务(Transaction)模式,是一种对象的行为模式.将一个请求封装为一个对象,从而使你可用不同的请求对客户进行参数化:对 ...

  9. linux source命令的用法

    source命令用法:source FileName作用:在当前bash环境下读取并执行FileName中的命令.(如把ls写入a.txt,然后source a.txt 就会执行ls命令,列出目录)注 ...

  10. vba遗传算法之非一致性突变

    http://www.docin.com/p-959323141-f4.html Sub 非一致性变异() Dim totalGenerate As Integer, currentGenerate ...