android - 将数据类对象初始化为 kotlin 中的 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 = "ak@gmail.com"
apiPost!!.password = "12345"
这里需要做什么?
解决方案
感谢这里的答案 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 = "ak@gmail.com", password = "12345")
推荐阅读
- mysql - mysql错误排序字符串中的数字,包括符号(-,破折号)
- python - 使用python加密和解密电子邮件
- azure - 每个分区的事件中心日志
- powershell - Powershell AzureAD 应用注册权限 New-AzureADApplication -RequiredResourceAccess
- javascript - 如何创建模拟 POST 请求以测试页面是否已更改
- security - 是否可以获得整个 GitHub 组织的 Dependabot 统计信息?
- python - 是否可以在“DjangoFilterBackend”的“filterset_fields”列表中使用“__date”作为“timestamp”字段
- android - 如果文本不适合 TextView,如何模糊最后几行文本
- android - 我需要使用优化路线的 mapbox 开始导航,但应用程序爆炸了
- swiftui - 如果 SwiftUI ScrollView 上有 delayscontenttouches 等价物?