java - 在 JAVA 中使用 this 在 ENUM 类函数中更改 ENUM 的值
问题描述
我有一个名为 entry 的 Java 枚举。我的目标是拥有一个将枚举值更改为另一个的函数。如果我的枚举值为 X,我希望它变为 Y,反之亦然。我尝试编写的代码在这里。但这不会编译,它会在我使用过的地方显示预期的变量this
。
public enum Entry {
X,
O;
public void switchEntry(){
this == Entry.X? this = Entry.O: Entry.X ;
}
}
另外我想知道是否可以在我的 ENUM 类中不使用附加值变量。谢谢你。抱歉,如果这是一个愚蠢的问题。
解决方案
您不能切换枚举本身的值。你可以做的是在一个类中使用枚举并使用那里的值:
class Test {
private Entry entry = Entry.X;
public void switchEntry() {
entry = entry == Entry.X ? Entry.O : Entry.X;
}
}
enum Entry {
X, O;
}
推荐阅读
- macos - 在支持早期版本 Mac 的 Macos 10.14.5 上使用 gcc 编译
- service-worker - 如何在.net core 3中将启动类添加到工作服务模板
- caching - Solaris OS 和 L1 L2 L3 高速缓存
- openssl - 在 OpenSSL 1.1.x 中,确定给定的 SSL* 是否对应于连接的服务器端或客户端
- sql-server - 创建“视图”以连接两个数据库
- python - Spacy模型不一致的预测
- angular - 如何使用 Angular 4 使用模板驱动的表单发布表单数据
- css - 如何根据屏幕宽度计算 CSS 缩放因子?
- python - python检查日期时间比n天早吗?
- java - 错误:未找到 Gradle DSL 方法:“实施()”