gpt4 book ai didi

java - 如何在 Java 中创建具有相同类型参数的方法?

转载 作者:搜寻专家 更新时间:2023-10-31 19:42:48 25 4
gpt4 key购买 nike

我的代码如下所示:

enum EnumType {
CATEGORY,
GROUP,
MAIN
}

方法:

public void call(EnumType type){
switch(type):
case CATEGORY:
return methodForCategory();
case GROUP:
return methodForGroup();
...
}
public void methodForCategory(){
... Operations according to EnumType.CATEGORY
}
public void methodForGroup(){
... Operations according to EnumType.GROUP
}
public void methodForMain(){
... Operations according to EnumType.MAIN
}

但我想像下面这样不用 switch/case 调用它;

public void call(EnumType type){
methodForType(EnumType type);
}

是否有可能或是否有更好的选择?

最佳答案

您可以在枚举中创建方法实现,如下所示:

public enum EnumType {

CATEGORY {

@Override
public void processMethod() {
// Do something here
}

},
GROUP {

@Override
public void processMethod() {
// Do something here
}

},
MAIN {

@Override
public void processMethod() {
// Do something here
}

};

public abstract void processMethod();
}

并将调用方法实现更新为:

public void call(EnumType type){
type.processMethod();
}

并且 switch 代码不应该返回任何东西,因为方法返回类型是 void

关于java - 如何在 Java 中创建具有相同类型参数的方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57933491/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com