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

seo在网站制作新闻稿撰写

seo在网站制作,新闻稿撰写,安徽省公共资源交易中心网站,wordpress传上七牛data class 介绍 kotlin 中 data class 是一种持有数据的特殊类 编译器自动从主构造函数中声明的所有属性导出以下成员: .equals()/.hashCode() 对 .toString() 格式是 "User(nameJohn, age42)" .componentN() 函数 按声明顺序对应于所有属性。…

data class 介绍

kotlin 中 data class 是一种持有数据的特殊类

编译器自动从主构造函数中声明的所有属性导出以下成员:

    .equals()/.hashCode() 对
    .toString() 格式是 "User(name=John, age=42)"
    .componentN() 函数 按声明顺序对应于所有属性。
    .copy() 函数

为了确保生成的代码的一致性以及有意义的行为,数据类必须满足以下要求:

    主构造函数需要至少有一个参数。
    主构造函数的所有参数需要标记为 val 或 var。
    数据类不能是抽象、开放、密封或者内部的。

val 声明的参数类似java的final  ,data clas 里面不会有 set方法

var 声明的参数data clas 里面有 set方法

data clas 的使用

data class Person(val name: String, val age: Int)class MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.main_layout)val person = Person("张三丰", 122)Log.d("======person", "姓名=${person.name},年龄=${person.age}")}
}

componentN() 函数介绍

data class主构造函数中的每个属性,Kotlin会根据构造函数的个数生成相应的componentN()函数,且有几个参数会生成几个componentN()函数

data class Person(val name: String, val age: Int)class MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.main_layout)
//        val person = Person("张三丰", 122)
//        Log.d("======person", "姓名=${person.name},年龄=${person.age}")val person = Person("张三丰", 122)val (name, age) = person // 使用componentN()函数解构赋值Log.d("======person","$name is $age years old")}
}

copy 介绍

copy() 方法: copy()方法是data class提供的一个内置工具,用于创建现有实例的一个副本,并允许你修改部分属性值

data class Person(val name: String, val age: Int)class MainActivity : ComponentActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.main_layout)
//        val person = Person("张三丰", 122)
//        Log.d("======person", "姓名=${person.name},年龄=${person.age}")//        val person = Person("张三丰", 122)
//        val (name, age) = person // 使用componentN()函数解构赋值
//        Log.d("======person","$name is $age years old")val person1 = Person("Alice", 30)// 创建person1的一个副本,并更改年龄val person2 = person1.copy(age = 31)// person2将拥有与person1相同的name属性,但age属性被更新为了31岁Log.d("======person", "姓名=${person2.name},年龄=${person2.age}")}
}

总体而言copy对于实现不可变设计模式或者需要快速创建基于已有对象的衍生版本时非常有用

http://www.tj-hxxt.cn/news/84467.html

相关文章:

  • 海南做网站的公司seo能从搜索引擎中获得更多的
  • 餐饮营销案例100例seo搜索优化是什么意思
  • 网站在线生成器爱站网关键词搜索
  • 网站建设高校焦作网站seo
  • 建网站哪家好案例免费大数据网站
  • 佛山微网站建设天博平台营销
  • 政府网站开发成本外贸网站推广费用
  • 付费视频网站开发bt磁力在线种子搜索神器
  • 关于网站建设的介绍桂林网站设计制作
  • 网站怎么做 织梦站长工具5g
  • 有了实名制域名怎么做网站推广app是什么工作
  • 跨境电商网站设计唯尚广告联盟平台
  • 2014 网站建设免费建立个人网站申请
  • javaweb做视频网站原理qq引流推广软件免费
  • 网站建设公司发展网站运营专员
  • 微信网站页面制作北京网站优化方法
  • 网站建设教程asp上海优化外包
  • asp网站数据库扫描网上做广告推广
  • 建设淘宝网站的市场分析aso优化师
  • 响应式博客网站模板长沙seo步骤
  • 网站首页设计多少钱网站优化方案怎么写
  • 富阳网站开发成都网站建设公司排名
  • 网页设计师课程开封网站优化公司
  • 新乡专业做网站公司公司免费推广网站
  • 黄村做网站哪家好百度的营销方式有哪些
  • 西安企业网站备案一般得多少天网页版百度
  • 杭州网站制作方法网络营销方案
  • 黑白色调网站搜索推广广告
  • 知名高端网站建设企业seo职业发展
  • 电商网站的付款功能网页设计排版布局技巧