为了账号安全,请及时绑定邮箱和手机立即绑定

如何将枚举的一个变量中的所有元素加载到数组中?

如何将枚举的一个变量中的所有元素加载到数组中?

慕运维8079593 2023-04-13 14:29:05
我正在尝试使用另一个类中的方法将一个枚举变量的元素放入数组中(我希望我的解释是正确的,请查看代码)我已经尝试过各种各样的事情,for 循环,有和没有构造函数。public enum coffeetypes {    COFFEE1 ("AMERICANO", "LATTE", "CAPPUCCINO"),    COFFEE2 ("ESPRESSO", "RISTRETTO", "AMERICANO"), ;   }我想得到结果"AMERICANO", "LATTE", "CAPPUCCINO" or "ESPRESSO", "RISTRETTO", "AMERICANO"not "AMERICANO" "ESPRESSO"
查看完整描述

2 回答

?
江户川乱折腾

TA贡献1851条经验 获得超5个赞

您的枚举类型甚至无法编译,因为它缺少构造函数和私有字段。添加它时,很容易添加 getElements() 方法,这样您就可以从枚举外部访问列表:


import java.util.Arrays;

public class Coffee {


    public enum CoffeeTypes {

        COFFEE1("AMERICANO", "LATTE", "CAPPUCCINO"), 

        COFFEE2("ESPRESSO", "RISTRETTO", "AMERICANO");

        String[] elements;

        private CoffeeTypes(String... elements)

        {

            this.elements=elements;

        }

        public String[] getElements()

        {

            return elements;

        }

    }


    public static void main(String[] args) {

        CoffeeTypes myinstance=CoffeeTypes.COFFEE1;

        System.out.println(Arrays.asList(myinstance.getElements()));

    }


}

Arrays.asList 只是用来以可读的方式打印数组。


查看完整回答
反对 回复 2023-04-13
?
慕尼黑的夜晚无繁华

TA贡献1864条经验 获得超6个赞

如果每个属性都有一个字段。


import java.util.Arrays;

import java.util.List;


class Coffee {

    public static void main(String[] args) {

        System.out.println(CoffeeTypes.COFFEE1.getAttributes());

    }


    public enum CoffeeTypes {

        COFFEE1 ("AMERICANO", "LATTE", "CAPPUCCINO"),

        COFFEE2 ("ESPRESSO", "RISTRETTO", "AMERICANO");


        private String n1;

        private String n2;

        private String n3;


        CoffeeTypes(String n1, String n2, String n3) {

            this.n1 = n1;

            this.n2 = n2;

            this.n3 = n3;

        }


        public List<String> getAttributes() {

            return Arrays.asList(n1, n2, n3);

        }

    }

}

输出


[AMERICANO, LATTE, CAPPUCCINO]


查看完整回答
反对 回复 2023-04-13
  • 2 回答
  • 0 关注
  • 151 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信