Scala中的case class

case class是Scala中一种特殊的类,它用于创建不可变的数据容器

Scala 复制代码
//Set特点:去重
//设置一个Book。三个属性:书名,作者,价格
class Book1(bookName:String,author:String,price:Double){
  //判断一个类的两个对象是否相等
//  override def equals(obj: Any): Boolean = {
//    //判断依据是书名相同
//    val o=obj.asInstanceOf[ttttt.Book]
//    o.bookName==bookName
//  }
//
//  override def toString: String = s"书名是:$bookName,作者是:$author,价格是:$price"
//
//  override def hashCode(): Int = bookName.hashCode
}

//casa class的特点
//1.数据是只读的
//2.可以省略new
//3.它内置实现了一些方法
//  equals hashCode toString
case class BookCase(bookName:String,author:String,price:Double)

object t4 {
  def main(args: Array[String]): Unit = {
    val book1=new Book1("西游记","吴承恩",100)
    val book11=new Book1("西游记","吴承恩",100)
    val set1=Set(book1,book11)
    println(set1)


    val book2=BookCase("西游记","吴承恩",100)
    val book3=BookCase("西游记","吴承恩",100)

    println(book1 == book11)
    println(book2 == book3)

    println(book1)//println会自动去调用对象的toString方法
    println(book2)


  }
}
相关推荐
是阿威啊11 小时前
【用户行为归因分析项目】- 【企业级项目开发第四站】模拟三类用户行为数据上传到Hadoop
大数据·hadoop·分布式·sql·scala
今天没有盐2 天前
Python字符串操作全解析:从基础定义到高级格式化
后端·scala·编程语言
是阿威啊3 天前
【用户行为归因分析项目】- 【企业级项目开发第一站】项目架构和需求设计
大数据·hive·hadoop·架构·spark·scala
代码于老总5 天前
【Scala 技巧】用隐式类给 String “开挂”:一行代码实现手机号 / 身份证号校验
scala
scala舔狗汪5 天前
scala的隐式对象和隐式类
scala
是阿威啊6 天前
【maap-analysis】spark离线数仓项目完整的开发流程
大数据·分布式·spark·scala
豚踢兔x11 天前
正则表达式应用-手机号打码
scala
代码于老总12 天前
正则表达式在 Scala 中的应用
scala
凯新生物18 天前
聚乙二醇二生物素,Biotin-PEG-Biotin在生物检测中的应用
scala·bash·laravel·perl
谁黑皮谁肘击谁在连累直升机18 天前
文件读写-成绩分析
scala