Kotlin(八)
来源:互联网 发布:中控矩阵系统 编辑:程序博客网 时间:2024/04/25 14:05
数据类
数据类是一种非常强大的类,定义一个新的数据类非常简单:
package com.zhoujian.kotlindemoimport java.util.*/** * Created by zhoujian on 2017/5/24. */data class Forecast(val date: Date, val tem: Float,val detais: String){}
额外的函数
通过数据类,我们可以方便地得到很多有趣的函数
- equals(): 它可以比较两个对象的属性来确保他们是相同的。
- hashCode(): 我们可以得到一个hash值,也是从属性中计算出来的。
- copy(): 你可以拷贝一个对象,可以根据你的需要去修改里面的属性。
复制一个数据
举个例子,如果我们需要修改Forecast中的temperature(温度),我们可以这么做:
val f1 = Forecast(Date(),22f,"阳光明媚") val f2 = f1.copy(tem = 25f) Log.i("MainActivity",f1.toString()) Log.i("MainActivity",f2.toString())
Forecast(date=Thu May 25 01:21:40 EDT 2017, tem=22.0, detais=阳光明媚)05-25 01:21:41.097 1870-1870/? I/MainActivity: Forecast(date=Thu May 25 01:21:40 EDT 2017, tem=25.0, detais=阳光明媚)
映射对象到变量中
val f1 = Forecast(Date(),22f,"阳光明媚")
override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.activity_main) val(date,tem,detais) = f1 val d = f1.component1() val t = f1.component2() val det = f1.component3() Log.i("MainActivity","d=$d,t=$t,det=$det") //d=Thu May 25 02:33:20 EDT 2017,t=22.0,det=阳光明媚}
阅读全文
0 0
- Kotlin(八)
- Kotlin数据类(八)
- kotlin入门(八)函数
- Kotlin语法(八)-接口
- kotlin学习笔记(八)
- Kotlin for Android(八)Kotlin空安全
- Kotlin笔记(八)Lambda表达式
- Kotlin学习笔记(八)对象
- Kotlin Reference (八) Classes and Objects
- Kotlin语法(八)-方法和lambda表达式
- Kotlin类和对象 (八)--- 泛型(Generics)
- Kotlin 其他(八) --- 空安全(Null Safety)
- Android开发,Kotlin的了解与学习(八)-----kotlin与java的互相调用
- kotlin开发Android入门篇八Kotlin开发Android的基本使用
- Kotlin
- Kotlin
- Kotlin
- Kotlin
- CF 55D beautiful number(数位dp)
- Docker实践-使用maven插件自动部署web应用至Docker容器的tomcat
- centos locate 命令安装
- Altium Designer Summer 16中如何实现元件自动编号
- python GIL 问题(multiprocessing和ctypes)
- Kotlin(八)
- setAudioSource failed 异常问题
- Nginx随写
- 同步加载、异步加载、延迟加载
- 转存Druid监控记录到日志文件
- curl post base64 jpeg图片精简版
- servlet的初始化过程
- Ubuntu下Android源码的获取(Android4.4为例)
- 关于安卓视频拍摄的小问题