• Android笔记:java 中的枚举


    部分数据使用枚举比较方便,java中的enmu不如c#中使用方便 记录备忘

    以c#中的代码为例

     public enum PlayState
        {
            /// <summary>
            /// 关闭
            /// </summary>
            Closed = 0,
    
            /// <summary>
            /// 播放
            /// </summary>
            Playing = 1,
    
            /// <summary>
            /// 随听
            /// </summary>
            Listening = 2,
    
            /// <summary>
            /// 暂停
            /// </summary>
            Paused = 3,
        }

    转换成java 是不可以直接转换的 最接近的是接口常量的写法

    public interface PlayStateInf {
        // / <summary>
        // / 关闭
        // / </summary>
        int Closed = 0;
    
        // / <summary>
        // / 播放
        // / </summary>
        int Playing = 1;
    
        // / <summary>
        // / 随听
        // / </summary>
        int Listening = 2;
    
        // / <summary>
        // / 暂停
        // / </summary>
        int Paused = 3;
    
    }

    比较相似的写法--interface

    public interface PlayStateInf {
        // / <summary>
        // / 关闭
        // / </summary>
        int Closed = 0;
    
        // / <summary>
        // / 播放
        // / </summary>
        int Playing = 1;
    
        // / <summary>
        // / 随听
        // / </summary>
        int Listening = 2;
    
        // / <summary>
        // / 暂停
        // / </summary>
        int Paused = 3;
    
    }

    java中的enmu实现 需要自定义转换

    public enum PlayState {
        // 利用构造函数传参
        Playing(1), Closed(0), Listening(2), Paused(3);
    
        // 定义私有变量
        private int value;
    
        // 构造函数,枚举类型只能为私有
        private PlayState(int _value) {
            this.value = _value;
        }
    
        @Override
        public String toString() {
            return String.valueOf(this.value);// 转换到字符串
        }
    
        public int value() {
            return this.value;
        }
    
    }

     语法参考:java enum(枚举)使用详解 + 总结

  • 相关阅读:
    bzoj4537: [Hnoi2016]最小公倍数
    bzoj4331: JSOI2012 越狱老虎桥
    bzoj4558: [JLoi2016]方
    bzoj4209: 西瓜王
    bzoj2653: middle
    bzoj4671: 异或图
    bzoj4771: 七彩树
    shell java应用启动脚本(app.sh)
    Springboot 构建http服务,返回的http行是'HTTP/1.1 200' 无状态码描述 客户端解析错误
    MariaDB(Mysql)-主从搭建
  • 原文地址:https://www.cnblogs.com/merray/p/3683162.html
Copyright © 2020-2023  润新知