Scala面向对象2与集合

Object&Class    

1.object与静态类相似
2.object可以用类名加方法直接调用,不用new对象。

    同名:“伴生”
    称为:object是class的伴生对象,class是object的伴生类
    

ApplyApp()
    ==> 伴生对象()是没有new的,其实底层调用的就是伴生Object里面的apply方法
 
 class和object都可以定义apply方式
    Object() ==> 调用的是Object里面的apply
    val a = new ClassA()  a() ==> 调用的是Class里面的apply方法

var randomnum=ArrayBuffer("00","01","02","03","04","05","06","07","08","09")
var traffic=ArrayBuffer("a","b","c","d","e","f","g","h","i","j","k")
//底层自动调用了apply方法


关于集合需要掌握的内容:
    1)如何创建
    2)如何赋值
    3)如何取值
 
数组 
    定长数组:   Array
        val a = new Array[String](5)

    变长数组: ArrayBuffer
    需要导入一个包:import scala.collection.mutable.ArrayBuffer
  var a= new ArrayBuffer[String]()
  变长+定长数据采用++=命令,同理,有--=命令

        
trait 接口        
        
List 
    Nil定义一个空的list
    head:返回list的第一个元素
    tail:返回的是去掉head之外的list
    List = head + tail

    定长:   List
    变长:ListBuffer
    变长+定长数据采用++=命令,同理,有--=命令
    举个例子:
    
 
Set: Scala Set(集合)是没有重复的对象集合,所有的元素都是唯一的。
如果需要使用可变集合需要引入 scala.collection.mutable.Set
    set vs list
        set:无序、不重复
        list:有序,可重复
Set的简单操作
    
Map:键值对  key-value    
也分为定长和变长,若用变长需导入以下包:
     scala.collection.mutable.HashMap
以下是定长map的赋值与查询:(定长中不可修改值)
    
以下是变长map的定义,赋值,查询和修改:
    

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值