案例一 星期:

星期的枚举: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. 实用SQL大全

    一.基础 1.说明:创建数据库 CREATE DATABASE database-name 2.说明:删除数据库 drop database dbname 3.说明:备份sql server --- ...

  2. 20172306 《Java程序设计与数据结构》第七周学习总结

    20172306<Java程序设计>第七周学习总结 教材学习内容总结 这一章的标题是继承.主要学习了有关继承的相关知识.其中在这五节中,我学到了以下几点: 1.继承主要表达的是" ...

  3. Python之路(第七篇)Python作用域、匿名函数、函数式编程、map函数、filter函数、reduce函数

    一.作用域 return 可以返回任意值例子 def test1(): print("test1") def test(): print("test") ret ...

  4. easyui下拉框过滤优化

    项目中有个需求:编辑combobox的输入域会自动检索匹配项,当没有任何匹配项时,将combobox重置为初始状态. 处理方式:重写输入域的blur事件,判断当前值是否为加载的数据集的子集,如果不是则 ...

  5. JS Async Callback

    AsyncCallback 意义: 异步操作完成时调用的方法 语法1: 构造异步回调对象 AsyncCallback 异步回调对象名asyncCallback = new AsyncCallback( ...

  6. Tgrocery学习及使用

    能够学习到短文本分类模型——Tgrocery,十分感谢@GavinBuildSomething把源码及测试数据分享,在此我也作为一名学习者将自己的学习过程记录下来,希望对其他人有所帮助.   1.学习 ...

  7. 2016年3月31日_应化所群体Review

    Review目的: Phonegap的ble插件可以接收到设备发送的信息,但接收并在控制台显示的数据夏一鸣不知道是正确的数据,还是由于编码解码问题导致的乱码问题.此次Review要解决的问题即判断接收 ...

  8. Linux下进行程序设计时,关于库的使用:

    一.gcc/g++命令中关于库的参数: -shared: 该选项指定生成动态连接库: -fPIC:表示编译为位置独立(地址无关)的代码,不用此选项的话,编译后的代码是位置相关的,所以动态载入时,是通过 ...

  9. (20)The most mysterious star in the universe

    https://www.ted.com/talks/tabetha_boyajian_the_most_mysterious_star_in_the_universe/transcript00:12E ...

  10. nxn随机矩阵乘以概率向量依旧是概率向量

    由上面可进一步推到出A*A是随机矩阵看成(A a1,A a2...A an) 所以A^m依然是随机矩阵.