java枚举树形结构

枚举树形结构

在这里插入图片描述

一、实现父子级枚举树形结构

1.创建一个实体类

代码如下(示例):

import lombok.Data;
import java.util.List;

/**
 * @ClassName EnumInfo
 * @Description TODO
 * @Author 码头土夫子_Gao
 * @Date 2021/12/16 8:40
 * @Version 1.0
 **/
@Data
public class EnumInfo {
   

    private  Integer code;

    private String remark;

    private List<EnumInfo> children;
    
}

2.父类枚举类NoticeTypeEnum

代码如下(示例):

import java.util.*;

public enum NoticeTypeEnum {
   

    SYSTEM(1, "系统通知") {
   
        @Override
        public List<MessageTypeEnum> getMessageTypes() {
   
            return Arrays.asList(MessageTypeEnum.ORDER, MessageTypeEnum.REFUND, MessageTypeEnum.AFTERSALE, MessageTypeEnum.COUPON);
        }
    },
    INTERACTION(2, "互动通知") {
   
        @Override
        public List<MessageTypeEnum> getMessageTypes() {
   
            return Arrays.asList(MessageTypeEnum.COMMENT, MessageTypeEnum.LIKE, MessageTypeEnum.REPLY);
        }
    },
    DELIVER(3, "物流通知") {
   
        @Override


        public List<MessageTypeEnum> getMessageTypes() {<