【问题标题】:Initialise data class object to 1 or 2 arguements in kotlin?在 kotlin 中将数据类对象初始化为 1 或 2 个参数?
【发布时间】:2019-08-25 07:06:36
【问题描述】:

我有以下数据类

data class ApiPost(
@SerializedName("LoginId")  var userName: String,
@SerializedName("Password") var password: String,
@SerializedName("NewPassword") var newPassword: String,
@SerializedName("FileType") var FileType: String,
@SerializedName("UserId") var UserId: String,
@SerializedName("CountryId") var CountryId: String,
@SerializedName("DateOfBirth") var DateOfBirth: String,
@SerializedName("Mobile") var Mobile: String,
@SerializedName("CountryName") var CountryName: String,
@SerializedName("CompanyName") var CompanyName: String,
@SerializedName("IsAnonymous") var IsAnonymous: String,
@SerializedName("EmployeeIssue") var EmployeeIssue: String,
@SerializedName("DetailedInformation") var DetailedInformation: String,
@SerializedName("EmployeeId") var EmployeeId: String,
@SerializedName("EmployeeEmailId") var EmployeeEmailId: String,
@SerializedName("FCMId") var FCMId: String
)

要初始化对象,我必须传递所有值。

但我的问题是,如果我只想将 2 个值传递给对象怎么办。怎么办?

val apiPost: ApiPost=ApiPost()
                    apiPost!!.userName = "ak@gmail.com"
                    apiPost!!.password = "12345"

这里需要做什么?

【问题讨论】:

标签: android kotlin retrofit data-class


【解决方案1】:

感谢这里的回答 Kotlin data class optional variable

数据类的初始化默认值

data class ApiPost(
        @SerializedName("LoginId")  var userName: String ="",
        @SerializedName("Password") var password: String ="",
        @SerializedName("NewPassword") var newPassword: String ="",
        @SerializedName("FileType") var FileType: String ="",
        @SerializedName("UserId") var UserId: String ="",
        @SerializedName("CountryId") var CountryId: String ="",
        @SerializedName("DateOfBirth") var DateOfBirth: String ="",
        @SerializedName("Mobile") var Mobile: String ="",
        @SerializedName("CountryName") var CountryName: String ="",
        @SerializedName("CompanyName") var CompanyName: String ="",
        @SerializedName("IsAnonymous") var IsAnonymous: String ="",
        @SerializedName("EmployeeIssue") var EmployeeIssue: String ="",
        @SerializedName("DetailedInformation") var DetailedInformation: String ="",
        @SerializedName("EmployeeId") var EmployeeId: String ="",
        @SerializedName("EmployeeEmailId") var EmployeeEmailId: String ="",
        @SerializedName("FCMId") var FCMId: String =""
    )

并称之为

ApiPost(userName = "ak@gmail.com", password = "12345")

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2023-01-26
    • 2014-06-23
    • 1970-01-01
    • 1970-01-01
    • 2019-07-13
    • 1970-01-01
    相关资源
    最近更新 更多