鸿蒙Harmony OS Next原生开发枚举类和枚举类的实际应用

鸿蒙初开,开天辟地

枚举

枚举是编程语言中常见的一种数据类型,主要是为了定义一组有限的选项,例如应用中的一些常量,用的很频繁但是不会出现什么变动的值,我们都可以封装为枚举类的常量

如上下左右这样的方向,春夏秋冬这样的季节,或者月份之类的

定义枚举需要使用enum关键字

enum Brand{
    HUAWEI,
    XIAOMI,
    OPPO,
    VIVO,
    APPLE
}

enum枚举的使用原则

访问枚举属性就和正常访问类变量是一样的

enum Brand{
    HUAWEI,
    XIAOMI,
    OPPO,
    VIVO,
    APPLE
}
let first:Brand = Brand.HUAWEI;
console.log(Brand.HUAWEI);

使用枚举值

枚举值的类型

枚举值的类型是enum,Brand.HUAWEI;Brand.XIAOMI;它们值的类型都是Brand

 

使用枚举类

我们现在实现一个走路的方法,需要更具用户(模拟触发了键盘或是鼠标事件给我们一个方向的情况)输入方向进行移动,因为这里只有上下左右四种方向,我们就可以选择使用枚举的方式实现

enum direction{
    U,
    B,
    L,
    R
}

我们定义一个角色移动的方法出来

function move(direction:Direction):void{
    if(direction===Direction.U){
        console.log("角色向上移动了");
    }
    else if(direction===Direction.B){
        console.log("角色向下移动了");
    }
    else if(direction===Direction.L){
        console.log("角色向左移动了");
    }
    else if(direction===Direction.R){
        console.log("角色向右移动了");
    }
    else{
        console.log("输入内容不合法,要么是程序错误,要么是玩家作弊");
    }
}

使用枚举

接下来我们使用一下这个方法,直接往方法里传递枚举值就可以实现了

enum Direction{
    U,
    B,
    L,
    R
}
function move(direction:Direction):void{
    if(direction===Direction.U){
        console.log("角色向上移动了");
    }
    else if(direction===Direction.B){
        console.log("角色向下移动了");
    }
    else if(direction===Direction.L){
        console.log("角色向左移动了");
    }
    else if(direction===Direction.R){
        console.log("角色向右移动了");
    }
    else{
        console.log("输入内容不合法,要么是程序错误,要么是玩家作弊");
    }
}
move(Direction.U);
move(Direction.B);
move(Direction.L);
move(Direction.R);

使用move方法

可以看到,如我们预期般执行了,这里同样是通过一个小DEMO展示枚举类在实际开发中的应用场景

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值