目录

一、练习题

二、小结


一、练习题

1. 定义一个enum类型用来表示周一到周天并把enum的值打印到控制台。

package Study

enum Week {
    Monday(String) | Tuesday(String) | Wednesday(String) | Thursday(String) |
    Friday(String) | Saturday(String) | Sunday(String)
}

func printlnWeek(week: Week) {
    match (week) {
        case Monday(day) => println("${day}")
        case Tuesday(day) => println("${day}")
        case Wednesday(day) => println("${day}")
        case Thursday(day) => println("${day}")
        case Friday(day) => println("${day}")
        case Saturday(day) => println("${day}")
        case Sunday(day) => println("${day}")
    }
}

main () {
    printlnWeek(Week.Monday("周一"))
    printlnWeek(Week.Tuesday("周二"))
    printlnWeek(Week.Wednesday("周三"))
    printlnWeek(Week.Thursday("周四"))
    printlnWeek(Week.Friday("周五"))
    printlnWeek(Week.Saturday("周六"))
    printlnWeek(Week.Sunday("周日"))
}

2. 定义一个电器类,成员有:名称和开机和关机,在定义手机类,继承电器类,特有成员有:播放音乐,使用as关键字,使用向下转型的方式让手机对象成功播放音乐。

package Study

abstract class Electric {
    public Electric(private var _name: String){}

    mut prop name: String {
        get() {
            return this._name
        }
        set(_name) {
            this._name = _name
        }
    }

    open public func start(): Unit

    open public func stop(): Unit
}

class Phone <: Electric {
    public Phone(private var _name: String){
        super(_name)
    }

    public override func start() {
        println("${this._name}开机了")
    }

    public override func stop() {
        println("${this._name}关机了")
    }

    public func playMusic() {
        println("${this._name}在播放音乐")
    }
}

main () {
    let electric: Electric = Phone("菠萝手机") 
    let phone: ?Phone = (electric as Phone)
    if (phone is Option<Phone>) {
        phone.getOrThrow().start()
        phone.getOrThrow().playMusic()
        phone.getOrThrow().stop()
    }
}

二、小结

本章为大家详细的介绍了仓颉编程语言中枚举类型练习题的内容,下一章,为大家带来match表达式的内容。最后,创作不易,如果大家觉得我的文章对学习仓颉服务端开发有帮助的话,就动动小手,点个免费的赞吧!收到的赞越多,我的创作动力也会越大哦,谢谢大家🌹🌹🌹!!!

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐