首页 > 其他分享 >Android-Kotlin-枚举ENUM

Android-Kotlin-枚举ENUM

时间:2023-06-22 14:37:00浏览次数:45  
标签:MyEnumerateWeek package Kotlin ENUM 枚举 myEnumerateWeek kotlin println Android


为什么要用枚举?

枚举的好处有:

1.使程序更容易编写和维护
2.防止用户乱输入,是一种约束

来看两个案例

案例一 星期:

星期的枚举: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)
}

打印的结果:

Android-Kotlin-枚举ENUM_android



案例二 性别:

人的性别枚举:

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)

}

执行结果:

Android-Kotlin-枚举ENUM_测试方法_02


标签:MyEnumerateWeek,package,Kotlin,ENUM,枚举,myEnumerateWeek,kotlin,println,Android
From: https://blog.51cto.com/u_16163510/6534856

相关文章

  • Android-Kotlin-函数表达式&String与int转换$异常处理
    Kotlin的函数表达式:packagecn.kotlin.kotlin_base03/***函数第一种写法*/funaddMethod1(number1:Int,number2:Int):Int{returnnumber1+number2}/***函数第二个种写法*/funaddMethod2(number1:Int,number2:Int)=number1+number2/***......
  • Android-kotlin-接口与多态的表现
    上一篇博客介绍了Android-Kotlin-抽象类与多态的表现;而这一篇博客专门介绍下接口与多态的表现1.选择包名,然后右键:2.选择Class类型,会有class:3.选择File类型,不会自动有class:5.选择interface,是创建接口:6.目录结构:1.定义手机充电接口标准规范InterfacePhone:packagecn.kotlin.kot......
  • Android Xml文件生成,Xml数据格式写入
    生成xml文件格式数据,Android提供了Xml.newSerializer();,可以理解为Xml序列化;序列化:把内存里面的数据(file,databases,xml等等)丢给某一个地方; 反序列化:把某个地方的数据(file,databases,xml等等),拿到内存中;既然是Android操作Xml,就用Android所提供的API,不用Java所提供的API,DOM......
  • Android-Kotlin-When&类型推断
    Kotlin的when表达式TextEngine描述文字处理对象:packagecn.kotlin.kotlin_base02/***描述文字处理对象**valtextContent传入进来的文字内容val是常量*/classTextEngine(valtextContent:String){/***处理文字,然后返回*返回完整的字符串......
  • Android-kotlin的继承
    上一篇博客讲了Android-kotlin的配置/入门,然后简单的实现了一个计算器功能。今天我们来讲讲kotlin中的继承是怎样的。1.先看一个案例,子类使用到父类的资源【案例一】父类张翠山:packagecn.kotlin.kotlin_oop03/***描述父对象:张翠山**personDescribe此人的简介/var......
  • Android-kotlin-具名参数
    先看一个这样的案例,【案例一】:packagecn.kotlin.kotlin_base05funshowAction1(country:String,volk:String){println("我的祖国是${country},我的民族是$volk")}funshowAction2(country:String,volk:String){println("我的祖国是${country},我的民族是......
  • 万事俱备面饿了么Android!面完哭了呜呜呜,还是美团香!
    大家应该看过很多分享面试成功的经验,但根据幸存者偏差的理论,也许多看看别人面试失败在哪里,对自己才更有帮助。最近跟一个朋友聊天,他漫不经心地复习了几个月,就去参加了饿了么面试,第二面结束后,嗯,挂了…当天怒清购物车,卸载饿死了么。下面是他回忆整理的凉经:一面(全都会)1.点击图标,应用打......
  • Android-Kotlin-区间与FOR&LIST&MAP简单使用
    区间与for:packagecn.kotlin.kotlin_base04/***区间与for*/funmain(args:Array<String>){/***Kotlin中提供了区间,例如:存入1到100,在Java中可能要写多行代码,而在Kotlin中很简单,代码如下*1..100*/varnumbers=1..100/***......
  • Android-Kotlin-递归与尾递归
    递归:阶乘计算:/***阶乘:*1的阶乘是1,因为1往下走一个楼梯就是0了*2的阶乘是2*1*3的继承是3*2*1*4的继承是4*3*2*1*5的阶乘是5*4*2*1*/packagecn.kotlin.kotlin_base06......
  • Android-引导用户指纹录入
    根据不同的手机,跳转到指纹录入界面,如果没有检测到手机的品牌,就提醒用户手动去指纹录入:首先描述手机信息检测对象,PhoneInfoCheck.java:packagecom.esandinfo;importandroid.app.AlertDialog;importandroid.content.ComponentName;importandroid.content.Context;importandr......