当前位置: 首页 > news >正文

android kotlin 数据类 data class

1、Kotlin中的数据类主要用于保存数据。对于每个数据类,编译器会自动生成其他成员函数,允许您将实例打印到可读输出、比较实例、复制实例等。

中文文档:

https://book.kotlincn.net/text/data-classes.html

2、新建文件dataClassTest.kt

3、代码

data class User1(val name: String, val age: Int)fun main(args: Array<String>) {val jack = User1(name = "Jack", age = 1)val olderJack = jack.copy(age = 2)println(jack)println(olderJack)val jane = User1("Jane", 35)val (name, age) = janeprintln("$name, $age years of age") // prints "Jane, 35 years of age"
}

4、kotlin的数据类,声明简单方便,还可以在类体中声明属性:

data class Person(val name: String) {var age: Int = 0
}
fun main() {val person1 = Person("John")val person2 = Person("John")person1.age = 10person2.age = 20println("person1 == person2: ${person1 == person2}")// person1 == person2: trueprintln("person1 with age ${person1.age}: ${person1}")// person1 with age 10: Person(name=John)println("person2 with age ${person2.age}: ${person2}")// person2 with age 20: Person(name=John)
}

5、类体中声明属性的输出:

6、复制

fun main(args: Array<String>) {val jack = UserCopy(name = "Jack", age = 1)val olderJack = jack.copy(age = 2)println(olderJack)
}

7、复制的输出

相关文章:

  • 北京网站建设多少钱?
  • 辽宁网页制作哪家好_网站建设
  • 高端品牌网站建设_汉中网站制作
  • python学习8:dict字典的定义,操作和方法,跟json有什么区别?
  • C++:priority_queue(优先级队列)的模拟实现
  • QML入门之基本元素
  • 嵌入式软件--51单片机 DAY 2
  • 基于YOLOv5的积水检测模型训练:从数据到模型的全面解析
  • Android UID 和 userID 以及 appID
  • 代码随想录 刷题记录-28 图论 (5)最短路径
  • 中秋之美——html5+css+js制作中秋网页
  • 深入理解单元测试
  • 对随机游走问题的分析特定行为模式的建模
  • 将Google Chrome或Microsoft Edge浏览器的地址栏隐藏的方法
  • 代理模式(权限、远程调用、延迟加载、日志和缓存)
  • 在vscode中用virtual env的方法
  • JVM5-垃圾回收
  • pandas读取带有表头的数据文件,读取无表头的数据文件
  • 【每日笔记】【Go学习笔记】2019-01-10 codis proxy处理流程
  • 【面试系列】之二:关于js原型
  • 03Go 类型总结
  • 10个最佳ES6特性 ES7与ES8的特性
  • ES6简单总结(搭配简单的讲解和小案例)
  • Java IO学习笔记一
  • JAVA并发编程--1.基础概念
  • js
  • JWT究竟是什么呢?
  • Laravel Mix运行时关于es2015报错解决方案
  • learning koa2.x
  • nginx 负载服务器优化
  • Python 使用 Tornado 框架实现 WebHook 自动部署 Git 项目
  • RxJS: 简单入门
  • Vue2.0 实现互斥
  • win10下安装mysql5.7
  • 阿里研究院入选中国企业智库系统影响力榜
  • 聚簇索引和非聚簇索引
  • 七牛云 DV OV EV SSL 证书上线,限时折扣低至 6.75 折!
  • 前端性能优化——回流与重绘
  • 云栖大讲堂Java基础入门(三)- 阿里巴巴Java开发手册介绍
  • 深度学习之轻量级神经网络在TWS蓝牙音频处理器上的部署
  • zabbix3.2监控linux磁盘IO
  • 支付宝花15年解决的这个问题,顶得上做出十个支付宝 ...
  • ​插件化DPI在商用WIFI中的价值
  • # 安徽锐锋科技IDMS系统简介
  • #git 撤消对文件的更改
  • #pragma data_seg 共享数据区(转)
  • #我与Java虚拟机的故事#连载06:收获颇多的经典之作
  • (DFS + 剪枝)【洛谷P1731】 [NOI1999] 生日蛋糕
  • (floyd+补集) poj 3275
  • (八)光盘的挂载与解挂、挂载CentOS镜像、rpm安装软件详细学习笔记
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (附源码)ssm经济信息门户网站 毕业设计 141634
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (实战)静默dbca安装创建数据库 --参数说明+举例
  • (一)80c52学习之旅-起始篇
  • (转)Android中使用ormlite实现持久化(一)--HelloOrmLite
  • (转)es进行聚合操作时提示Fielddata is disabled on text fields by default
  • (转)ObjectiveC 深浅拷贝学习