当前位置: 首页 > 面试题库 >

如何在编码类型中使用任何

姜智渊
2023-03-14
问题内容

我目前Codable在我的项目中使用类型,并且遇到问题。

struct Person: Codable
{
    var id: Any
}

id上面的代码中的可以是StringInt。这是id类型的原因Any

我知道Any不是Codable

我需要知道的是如何使它工作。


问题答案:

可编码需要知道要转换的类型。

首先,我将尝试解决不知道类型的问题,看看是否可以解决它并使它更简单。

否则,我目前认为解决您的问题的唯一方法就是使用如下所示的泛型。

struct Person<T> {
    var id: T
    var name: String
}

let person1 = Person<Int>(id: 1, name: "John")
let person2 = Person<String>(id: "two", name: "Steve")


 类似资料:
  • 我有这个服务器: 和此客户端: 当我运行这两个(首先运行服务器)时,我得到的结果是: 线程“main”javax.json.JSONException中的异常:自动检测流的编码时出现I/O错误 在哪里可以设置流的编码类型?我应该把它设置成什么?我需要为客户端和服务器都这样做吗? 谢谢,

  • 在这段代码中,我遇到了Veracode问题: CRLF序列的不当中和(“CRLF注入”)(CWE ID 93) 在 我正在尝试使用 来解决这个问题,但我不知道 类的用法。任何人都可以简要介绍类的实现,在哪里使用,用它解决了什么?

  • 假设您有以下抽象java类: 以及以下子类层次结构: 假设您需要在超类上的给定点使用泛型类型,例如,为了在构造函数上使用gson库将请求json反序列化到特定的请求对象,如下所示: 您需要变量“typeOfI”中的泛型I类型 是否有一个全局解决方案,允许获得由尊重以下约束的具体子类指定的泛型类型? 该类型是在运行时获取的,与子类的层次结构无关(这个问题的示例可能更复杂) 开发人员只需要定义泛型来扩

  • 我正在使用泛型在python中创建一个List类(类似于java列表的列表)。类节点也是通用的,我正在为上一个和下一个节点创建 getter 和 setters 方法。我想知道如何返回像类节点本身这样的类型?这是我的进步: 我试过 但它给了我错误

  • 我有一个很大的问题,我不知道我是否错过了一些明显的东西或什么,但我不能发现我的错误。我有类SPN、A和B。我重载了2次operator=。我想将A类型或B类型作为参数传递。 它不会抛出任何错误。但是如果我在类B或A中尝试make operator(),则使用参数SPN,如下所示: 它会抛出SPN未命名类型的错误。我甚至不能在A类或B类中创建类SPN对象。也许它不是如何客观编程工作,所以我想得到它,

  • 我目前正在构建一个python gRPC服务器,它将大量不同的proto消息序列化为json,以将它们存储到无sql数据库中。我希望简化此服务器的扩展,这样我们就可以添加新类型,而无需重写gRPC服务器和重新部署。理想情况下,我们希望定义一条新消息,将其放入一个proto文件中,并仅更新客户端。服务器首先应该期望任何类型,但知道。进行序列化/反序列化时要查找的原型文件或文件夹。 我读过关于“任何类