java - 如何通过其他 ENUM 字段值有条件地从对象中删除字段
问题描述
我有一个类如下,SelectedFormat 是一个枚举。
主要对象类
public class ABC {
private SelectedFormat selectedFormat;
private JsonArrayVo jsonArray;
}
选定格式
public enum SelectedFormat {
TEXT("TEXT"), JSON( "JSON");
}
我需要删除“jsonArray”字段才能获得 selectedFormat 的值。在这种情况下,jsonArray 仅在 selectedFormat 为 JSON 时适用
解决方案
您的错误是进行SelectedFormat
枚举。
相反,您应该为一个接口建模一个Format
两个类TextFormat
并JSonFormat
实现该接口。
interface Format { ... }
class TextFormat implements Format {...}
class JsonFormat implements Format {
private JsonArrayVo valueObject;
}
推荐阅读
- haskell - 我可以用什么代替`case of`来减少代码?
- linkedin - [Linkedin]“organizationalEntityAcls”API 端点不提供分页详细信息和投影
- android - Android 和 SQLite 保护
- i2c - 我如何加载代码以通过 TWI 闪烁?
- javascript - 如何使用 lodash 的 ._get 方法检查路径的 2 个值
- c# - C# 中的 ForEach 循环问题
- c# - Selenium c# click exacly span 1 by xpath
- java - 如何将加密值从包含“onchange”的 JAVA 构建的 HTML 传递到 HTML
- php - PHP如何从配置目录中获取数据?拉拉维尔
- reactjs - 如何在reactjs的地图功能中连接