enums 相关问题

一种数据类型,由一组名为元素,成员或类型的枚举器的命名值组成。

在所有枚举值中共享一个共同值

我有以下代码,其中枚举消息的每个变体都有一个与之关联的术语值: 输入 Term = usize; pub 枚举消息 { 追加请求(期限), 追加响应(术语),

回答 3 投票 0

C# 枚举到字符串自动转换?

是否可以让编译器自动将我的 Enum 值转换为字符串,这样我就可以避免每次都显式调用 ToString 方法。这是我想做的一个例子: 嗯...

回答 6 投票 0

有没有简单的方法可以从 ASP.NET Core 中的枚举创建 Bootstrap 单选按钮组?

我有一个关于优先级的枚举: 公共枚举优先级 { P1, P2, P3, P4, P5, } 我想在 Bootstrap 中制作一个单选按钮组,以选择哪个项目...

回答 2 投票 0

使用 application.properties 在 Spring 中配置枚举

我有以下枚举: 公共枚举 MyEnum { NAME("名字","好",100), FAME("名声", "坏", 200); 私有字符串小写; 私有字符串

回答 2 投票 0

插入新记录后跳过 ENUM 列

带有 Postgres 的 EF Core 在插入新记录后会跳过 ENUM 列,并且默认值将保存在数据库中。 我正在尝试向 postgres 表 EncounterBatchItem 添加新记录。看来...

回答 1 投票 0

C# Postgres 在插入新记录后跳过 ENUM 列

C# Postgres 在插入新记录后跳过 ENUM 列,并且默认值保存在数据库中。 我正在尝试向 postgres 表 EncounterBatchItem 添加新记录。看来它的sk...

回答 1 投票 0

嵌套关联值的自定义解码器初始化

我正在尝试为 Decodable 协议实现自定义 init(来自解码器:Decoder)抛出 {} ,但出现错误: DecodingError.typeMismatch(Swift.Dictionary 我正在尝试为 Decodable 协议实现自定义 init(from decoder: Decoder) throws {},但出现错误: DecodingError.typeMismatch(Swift.Dictionary<Swift.String, Foundation.JSONValue>) Expected to decode Dictionary<String, JSONValue> but found a string instead. struct Model: Decodable { let title: String let gotoAction: GotoAction // String work fine } enum GotoAction: Decodable { case noAction case websiteLink(String) case sheet(OpenSheet) private enum CodingKeys: String, CodingKey { case noAction case websiteLink case sheet } init(from decoder: Decoder) throws { let container = try decoder.container(keyedBy: CodingKeys.self) if let link = try container.decodeIfPresent(String.self, forKey: .websiteLink) { self = .websiteLink(link) } if let sheet = try container.decodeIfPresent(OpenSheet.self, forKey: .sheet) { self = .sheet(sheet) } // let noAction = try container.decodeIfPresent(String.self, forKey: .noAction) // self = noAction throw DecodingError.dataCorruptedError(forKey: .websiteLink, in: container, debugDescription: "No match") } } enum OpenSheet: Decodable { case firstBanner case secondBanner(String) } let json = """ { "title": "Hello", "goto_action": "no_action" } """ let decoder = JSONDecoder() decoder.keyDecodingStrategy = .convertFromSnakeCase let result = try decoder.decode(Model.self, from: json.data(using: .utf8)!) print(result) 我需要做什么才能使代码正常工作? 我认为仅凭JsonDecoder无法完成此任务。本质上 gotoAction 的值是 String 类型,而不是有效的 Json。 这就是您收到的错误消息的含义。 您需要自己解释该字符串并将其转换为枚举。 我已经使用您为 GotoAction 枚举提供的信息实施了一个可能的解决方案。当然,这需要更多的工作,例如检查正确的密钥并适当地抛出错误。 struct Model: Decodable { let title: String let gotoAction: GotoAction // String work fine private enum CodingKeys: String, CodingKey{ case title case gotoAction } init(from decoder: Decoder) throws { let container = try decoder.container(keyedBy: CodingKeys.self) self.title = try container.decode(String.self, forKey: .title) let enumString = try container.decode(String.self, forKey: .gotoAction) self.gotoAction = try GotoAction.fromString(enumString) } } enum GotoAction: Decodable { case noAction case websiteLink(String) case sheet(OpenSheet) static func fromString(_ enumString: String) throws -> GotoAction{ let array = enumString.split(separator: "/") let key = array.first! let associatedValue = array.dropFirst().joined(separator: "/") if key == "website_link"{ return .websiteLink(associatedValue) } else if key == "sheet"{ return .sheet(try OpenSheet.fromString(associatedValue)) } return .noAction } }

回答 1 投票 0

验证列表是否为枚举

我有一个看起来像这样的枚举,我需要验证它们的值 公共枚举用户角色{ ROLE_ADMIN("ROLE_ADMIN"), ROLE_CONFIG_EDITOR("ROLE_CONFIG_EDITOR"),

回答 3 投票 0

从通用枚举创建 EnumMap

我有一个用通用枚举参数化的类,如下所示: 公共类 SomeClass> { 公共无效一些方法(){ // 我想启动一个这样的地图: 地图<...

回答 2 投票 0

Enum 的“通过可变参数参数可能造成堆污染”...为什么?<E>

,则可能会通过 varargs 参数元素造成堆污染

回答 1 投票 0

使用java流来验证列表中的值是否在枚举类中找到

下午好 我有一个问题,目前我需要一个传递值数组列表的方法,有必要将其与枚举进行比较,以防列表中的某些值不...

回答 1 投票 0

Xamarin.Forms:使用类型转换器将枚举参数传递到 URL

在我的页面中,我有一个枚举类型的绑定属性: [QueryProperty(nameof(EnumProp), nameof(EnumProp))] 公共部分类 MyPage :ContentPage { 公共静态只读 BindableProperty

回答 1 投票 0

枚举值作为类型的联合

我正在尝试针对特定场景使用类型安全。想象一下我们有: 常量枚举颜色{ 红色='红色', 蓝色='蓝色', } 常量枚举形状 { 矩形 = '矩形', 正方形='正方形', ci...

回答 1 投票 0

为枚举实现 Deref 以获得其判别式?

Deref 文档具有以下示例代码作为如何使用 Deref 的示例,但存在一些无关紧要的差异: 结构体X(u8); 为 X 实现 std::ops::Deref { 类型目标= u8; fn ...

回答 1 投票 0

如何在方便的函数中转换TS断言条件?

我正在使用断言条件并有这样的代码 枚举类型 { a = "a", b = "b", c = "c" } 断言(条件:任何):断言条件{ if(!condition) 抛出新的...

回答 1 投票 0

无法将 HttpMessageNotReadableException 捕获到 ControllerAdvice 中进行枚举验证

我有一个枚举类如下: 公共枚举用户角色{ 管理员(“管理员”), 用户(“用户”); 公共字符串标签; 用户角色(字符串标签){ this.label = 标签; ...

回答 1 投票 0

Python 派生枚举缺少所需的位置参数

我正在尝试定义一个对象值枚举,并且在 enum_member.__init__(*args) 中遇到“缺少 1 个必需位置参数”的错误 我的代码的基本示例,遵循

回答 2 投票 0

我可以安全地将数字转换为枚举并带有后备值吗?

我想写这样的东西: 模板 E safe_cast_to_enum(std::underlying_type_t e); 对于枚举类(或只是枚举?)E,将 e 转换为

回答 2 投票 0

如何在 React Native 中定义枚举

基本上我想要实现的是将信息发送到服务器而不带引号,例如 Admin 而不是“Admin”,但众所周知,Graphql 会抛出错误,如果变量未定义或...

回答 5 投票 0

如何在 ASP.NET MVC 中保留 Enum 下拉列表的选定值

我在导航栏上使用 Enum 创建了一个全局下拉过滤器。它可以工作,但过滤数据后下拉值会恢复为默认值。我希望所选值继续保留,直到 ch...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.