03-Scala面向对象与集合

def function_name(a:String, b:Int):String = {

// 方法体

// 最后一行是整个函数的返回值

}

to  until Range 的区别

for

默认参数/命名参数/变长参数(:_*)

面向对象编程

Class

new

Object???

构造器:主/附属

继承

重写:方法/属性  override

抽象类

Object&Class

同名:“伴生”

称为:object是class的伴生对象,class是object的伴生类

ApplyApp()

==> 伴生()没有new的,其实底层调用的就是伴生Object里面的apply方法

class和object都可以定义apply方式

Object() ==> Object里面的apply

val a = new ClassA()  a() ==> Class里面的apply方法

集合:

1)如何创建

2)如何赋值

3)如何取值

数组

定长: Array

val a = new Array[String](5)

变长: ArrayBuffer

变长+定长采用++=

trait 接口

List

Nil就是一个空的list

head:返回list的第一个元素

tail:返回的是去掉head之外的list

List = head + tail

定长: List

变长:ListBuffer

Set:

set vs list

set:无序、不重复

list:有序,可重复

Map:键值对  key-value

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Scala与Java的关系 Scala与Java的关系是非常紧密的!! 因为Scala是基于Java虚拟机,也就是...
    灯火gg阅读 8,810评论 1 24
  • 1.1. 什么是Scala Scala是一种多范式的编程语言,其设计的初衷是要集成面向对象编程和函数式编程的各种特...
    文子轩阅读 5,395评论 1 3
  • pyspark.sql模块 模块上下文 Spark SQL和DataFrames的重要类: pyspark.sql...
    mpro阅读 13,145评论 0 13
  • 本文是在学习和使用kotlin时的一些总结与体会,一些代码示例来自于网络或Kotlin官方文档,持续更新... 对...
    竹尘居士阅读 8,599评论 0 8
  • 在那个寒冷的冬天,时针指向中午11:45分,你的第一声啼哭让早已全身麻木的我激动不已,虽然手术后的我不能动弹,但看...
    sendy1126阅读 1,950评论 0 0