我不知道如何添加到数组枚举。我使用enum及其作品的字段构建了构造函数,但我不知道如何在没有字段的构造函数中创建它。我希望你明白我在想什么。在我的代码中,我评论我认为我有问题的地方。 我有:
public enum Components {
WIFI, BLUETOOTH, CAMERA, SSD
}
public Laptop(){
System.out.println("name of producer:");
String producername = Main.sc.nextLine();
System.out.println("name of model:");
String modelname = Main.sc.nextLine();
System.out.println("ram:");
int ram = Main.sc.nextInt();
System.out.println("cpu:");
String cpu = Main.sc.nextLine();
cpu = Main.sc.nextLine();
System.out.println("components:");
System.out.println("how many components do you want to add?");
int z = Main.sc.nextInt();
Components[] com = new Components[z];
for(int i=0; i<com.length;i++){
com[i] = //<-- how to add enum in array?
}
setProducerName(producername);
setModelName(modelname);
setRam(ram);
setCpu(cpu);
setComponents(com);
}
我的构造函数使用字段就是这样,它可以工作。
public Laptop(String ProducerName, String ModelName, int Ram, String Cpu, Components... components) {
super();
this.ProducerName= ProducerName;
this.ModelName= ModelName;
this.Ram= Ram;
this.Cpu= Cpu;
this.components= new Components[components.length];
this.components= Arrays.copyOf(components, components.length);
}
请帮忙。
答案 0 :(得分:1)
您可以按名称获取pandas.nlargest(4, "Age")
值。
enum
答案 1 :(得分:0)
我不是100%清楚你要问的是什么,但你可以从enum本身获得一个充满你的枚举常量的数组:Components.values()
将返回一个所有的数组枚举常数。它基本上会回归:
new Components[]{Components.WIFI, Components.BLUETOOTH,
Components.CAMERA, Components.SSD}
侧面建议:不要在您的Laptop构造函数中使用Scanner,事实上,从该类的所有构造函数和实例方法中获取所有用户界面代码。所有用户界面代码都属于其他地方。