Инициализировать объект класса данных для 1 или 2 аргументов в котлине?

У меня есть класс данных ниже

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 = "[email protected]"
                    apiPost!!.password = "12345"

Что здесь нужно сделать?


person WISHY    schedule 25.08.2019    source источник
comment
stackoverflow.com/questions/47134138/   -  person Raghunandan    schedule 25.08.2019
comment
Вы можете проверить этот stackoverflow.com/questions/44391468/ Надеюсь, это поможет.   -  person TheGraduateGuy    schedule 25.08.2019


Ответы (1)


Благодаря ответу здесь дополнительная переменная класса данных Kotlin

Инициализированное значение по умолчанию для класса данных

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 = "[email protected]", password = "12345")
person WISHY    schedule 25.08.2019