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

Kotlin-为非数据类生成toString()

申高峰
2023-03-14
问题内容

情况:

我有一个带有lateinit字段的类,因此它们不在构造函数中:

class ConfirmRequest() {
    lateinit var playerId: String
}

我想拥有一个toString()包含所有字段的方法,并且不想手动编写它,以避免锅炉打印。在Java中,我将使用 Lombok
@ToString注释解决此问题。

题:

有什么方法可以在Kotlin中实施吗?


问题答案:

推荐的方法是toString手动编写(或由IDE生成),并希望您没有太多这样的类。

目的data class是为了适应最常见的85%的情况,而剩下15%留给其他解决方案。



 类似资料:
  • 报告不提供serialVersionUID字段的任何可序列化类。如果没有serialVersionUID字段,对类的任何更改都将使先前序列化的版本不可读。 但这只适用于Java类

  • 最近,我开始将我的Android项目从Java转换为Kotlin。我在许多类中使用改型从API获取数据。在我的项目中,有很多POJO,我需要手动将它们转换为数据类,因为它与AndroidStudio的自动转换器工具不兼容。 假设我有模型类: 在Kotlin中有没有什么好方法可以直接将这个模型类转换为数据类?这个类可以手动转换,但我有一些类有大量的变量,手动将其转换为数据类会很麻烦。

  • 我正在项目中使用数据绑定,但在xml绑定类中使用和时未生成。 例如,我有activity_main.xml Android Studio:2.1.3 类路径:com.Android.tools.build:Gradle:2.1.3 minSdkVersion 16 targetSdkVersion 24 buildToolsVersion 24.0.0

  • 问题内容: 从现在到现在,我一直在为Google Appengine上的Android应用程序开发后端。直到昨天一切都运转良好。我在过去两个月没有生成端点,但是昨天尝试这样做时,出现了错误。 就是这种情况。 在Android IDE(Eclipse 4.2)中,我单击“生成云端点客户端库”。 我必须等待大量时间… 错误出现(我将在下面粘贴stacktrace)。 预期输出->一切正常,我的andr

  • 我有java代码,我改成kotlin了,我的代码是用pdf-viewer库显示pdf的,我不明白为什么我的代码是错误的,下面是错误: 指定为non-null的是null参数:方法kotlin.jvm.internal.intrinsics.CheckParameterIsNotNull,inputStream参数 这是我的密码