- mongodb - 在 MongoDB mapreduce 中,如何展平值对象?
- javascript - 对象传播与 Object.assign
- html - 输入类型 ="submit"Vs 按钮标签它们可以互换吗?
- sql - 使用 MongoDB 而不是 MS SQL Server 的优缺点
有谁知道如何将这段代码转换成kotlin
GsonBuilder builder = new GsonBuilder();
builder.setLenient();
builder.registerTypeAdapter(Date.class, new JsonDeserializer<Date>() {
@Override
public Date deserialize(JsonElement json, Type typeOfT, JsonDeserializationContext context) throws JsonParseException {
if (json.getAsJsonPrimitive().isNumber()) {
return new Date(json.getAsJsonPrimitive().getAsLong() * 1000);
} else {
return null;
}
}
});
return builder.create();
然后,我尝试了
val builder = GsonBuilder()
builder.setLenient()
builder.registerTypeAdapter(Date::class.java,.........)
return builder.create()
.....我不知道如何转换代码
最佳答案
您询问的代码行可以转换为以下 Kotlin 代码:
builder.registerTypeAdapter(Date::class.java, JsonDeserializer<Date> {
json, typeOfT, context ->
if (json.getAsJsonPrimitive().isNumber())
Date(json.asJsonPrimitive.asLong * 1000) else
null
})
首先,Kotlin 支持 SAM conversion of lambdas to Java interfaces , 但语法与 Java 不同。那么,lambda 中的返回值与 Java 中的含义不同,应替换为 implicit returns。或 labeled returns .
关于java - 将 GsonBuilder 转换为 Kotlin,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44050597/
我将 Retrofit 库与 Gson 结合使用,并最初尝试过: GsonBuilder builder = new GsonBuilder(); builder.registerTy
我在尝试运行 appium 测试时收到上述错误。我使用的 jar 是: 我的 lib 文件夹中的 jars: 我的应用程序将在 之后出现 driver = new AndroidDriver<>(ne
嗨,我在启动驱动程序时遇到了这个问题。 Starting ChromeDriver 2.35.528161 (5b82f2d2aae0ca24b877009200ced9065a772e73) on
我正在使用以下代码( found on this webpage )和 Gson 库(2.8.2)来格式化带有 pretty-print 的 JSON 代码。 import com.google.gs
这个问题已经有答案了: how to config gson to exclude 0 integer values (4 个回答) 已关闭 3 年前。 我的POJO: public class My
我有以下 rest 模板(用于对服务器的 json 请求): public RestTemplate createRestTemplate() { RestTemplate restTempl
我的客户以“2019-11-22T16:16:31.0065786+00:00”格式向我发送日期。我收到以下错误: java.text.ParseException: Unparseable date
我这样调用一个方法: GsonBuilder gsonBuilder = new GsonBuilder() .registerTypeAdapter(CoindeskRateResu
有谁知道如何将这段代码转换成kotlin GsonBuilder builder = new GsonBuilder(); builder.setLenient(); builder.register
String jsons = "{'appname':'application', 'Version':'0.1.0', 'UUID':'300V', 'WWXY':'310W', 'ABCD':'2
我尝试使用 google.gson.GsonBuilder 如下序列化一个对象: public class JsonHelper { public static String ToJson(O
我正在尝试用 java 制作一个 irc 机器人,它使用 Google api 来搜索内容。我找到了一个使用 GSON 的教程,并且该程序编译得很好。当我尝试实际使用机器人时,我收到错误。 我的导入:
我在 json 中以 2011-10-26T20:29:59-07:00 的形式获取日期/时间。这次使用 gsonBuilder.setDateFormat 正确格式化的正确方法是什么? 最佳答案 -
我尝试在程序中使用 Unirest,但不断收到此错误 java.lang.NoSuchMethodError: com.google.gson.Gson.newBuilder()Lcom/google
我正在构建一个 Android 应用程序,它使用 google play 服务作为谷歌地图,使用 Microsoft azure 作为移动服务(云存储)。当我仅使用 Microsoft azure 库
我从服务器得到这个字符串: [ { "title":"spoil the ones u love today", "startDateTime":"2014-08-10T20:10:36.7
我正在使用 Corda 的第 4 版。 以下是显示平台版本和其他依赖项的代码: cordaReleaseGroup=net.corda cordaVersion=4.0 gradlePluginsVe
我是一名优秀的程序员,十分优秀!