作者热门文章
- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我在 Java 中有这个简单的 enum
public enum FileType {
FILE('-'), DIRECTORY('d'), SYMLINK('l'), DEVICE('b');
private char type;
FileType(char type) {
this.type = type;
}
}
我想用 FileType type = FileType.valueOf('d');
的方式创建它,这是否可行?
最佳答案
将 type
重命名为 name
以避免混淆,但您明白了。
public enum FileType
{
FILE('-'), DIRECTORY('d'), SYMLINK('l'), DEVICE('b');
private char name;
FileType(char name)
{
this.name = name;
}
public static FileType getFileTypeForName(final char name)
{
for (FileType type : FileType.values())
if (type.name == name)
return type;
return null;
}
}
此外,请注意 valueOf
的工作方式如下:
Returns the enum constant of the specified enum type with the specified name.
因此您将使用它来执行 FileType type = FileType.valueOf("FILE");//产生 FILE 枚举
关于java - 通过 char Java 获取枚举,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20271353/
我是一名优秀的程序员,十分优秀!