gpt4 book ai didi

Grails 字符串枚举?

转载 作者:行者123 更新时间:2023-12-04 04:44:51 25 4
gpt4 key购买 nike

假设我有这个枚举:

public enum MyEnum {
AUSTRALIA_SYDNEY ("Australia/Sydney"),
AUSTRALIA_ADELAIDE ("Australia/Adelaide"),

private String name

private Timezone(String name){
this.name = name
}

public String value() {
name
}

String toString() {
name
}
}

有没有办法让我使用它的值/名称来获取枚举?
现在,我正在尝试这样做,但它不起作用:
MyEnum.valueOf("Australia/Sydney")

我从数据库得到的是一个字符串(在这种情况下:“澳大利亚/悉尼”),而不是值,不幸的是,我不能改变它返回的类型,因为它是一个旧的
系统,我只是连接到这个由多个应用程序共享的数据库。无论如何围绕这个?

最佳答案

将以下内容添加到您的枚举中:

static MyEnum valueOfName( String name ) {
values().find { it.name == name }
}

然后,您可以调用:
MyEnum.valueOfName( "Australia/Adelaide" )

关于Grails 字符串枚举?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18823595/

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