当前位置: 首页 > 知识库问答 >
问题:

只允许类位于类文本的左手边

乐正光誉
2023-03-14

在StackOverflow中我知道很多类似的问题,但没有什么能解决我的问题。

  data class ServiceCall<out T>(val result: T?, val exception: String?, val pagination: String?, val stringResult: String?)
Gson().fromJson(json, ServiceCall<SurveyListModel>::class.java).result

IDE显示错误:只允许类位于类文字的左手边

对此如何解决?提前道谢。

共有1个答案

柯骏
2023-03-14

您不能将泛型与class一起使用,在这里可以很容易地观察到:

List<Int>::class.java

它会给你同样的错误。要在GSON反序列化中使用泛型类型,请执行以下建议:

https://stackoverflow.com/A/55554296/8073652

在Kotlin看来是这样的:

val type: Type = object : TypeToken<ServiceCall<SurveyListModel>>() {}.type 
Gson().fromJson<ServiceCall<SurveyListModel>>(json, type).result

我写了一个小的概念证明:

 class Token : TypeToken<List<Int>>()
 val x: List<Int> = Gson().fromJson(Gson().toJson(arrayOf(1)), Token().type)
 println(x)
 类似资料:
  • 我使用Android Studio的转换工具来转换现有的java测试类。 我得到了这个错误: 只允许类位于类文本的左手边 那么在这种情况下如何使用泛型参数呢?多谢了。

  • 假设我们有一个带有签名的函数 是否有可能实施一个约束来确保a和b是不同的?那就是 这个问题的目的是了解更多关于Haskell的信息,并可能解决我面临的一个设计问题。如果a==b,我的特殊情况是没有意义的,所以我想在编译器级别禁止这样做。我可能会用一个完全不同的设计来解决这个问题,但这不仅仅是现在的重点--潘多拉盒子已经打开,我想知道类型级别上的等式约束是否可能。

  • 问题内容: 我正在创建一个页面,供用户上传文件。如果文件类型是其他jpg,gif和pdf,我希望使用if语句创建$ error变量。 这是我的代码: 我在构造if语句时遇到困难。我怎么说呢 问题答案: 将允许的类型放入数组并使用。

  • 我想问,有没有可能限制我的模板函数,使它只接受我指定的几种类型?这就是如何告诉编译器在我使用cout< 更明确地说,这就是我要做的:

  • 问题内容: 我正在使用ui- select中的选择框。一切正常,但我想允许手动输入文本,并且不想从列表中的可用值中限制用户。如果我输入文字,它将正确过滤我的列表。但是,当我不单击某个元素并移至下一个字段时,我的文本将被丢弃。 有任何想法吗? 谢谢和问候,亚历克斯 我不想显示我的代码,因为我认为它是不正确的,但是有人要求: 数据存储在中。是要显示的当前字段的编号(我正在动态生成表单)。只需假设它存储

  • 问题内容: 在angularjs中,有任何可用的功能,仅允许将数字键入文本框中,例如 问题答案: 此功能正是您所需要的。http://docs.angularjs.org/api/ng.directive:input.number 编辑: 您可以将jquery插件包装到指令中。我在这里创建了一个示例:http : //jsfiddle.net/anazimok/jTJCF/ HTML: CSS: