结构:
学会使用scala中主要流程控制语句
数组:
学会数组的声明和使用
映射:
了解scala中的映射基础知识
包的引用:
了解scala中包的基础知识
scala控制结构:
判断if
循环while/do
枚举for表达式
匹配match表达式
异常处理throw/try
输出print/println
输入readLine
控制结构参考代码如下:
object dada { def main(args: Array[String]): Unit = { /*var result = min(2,3); print(result)*/ //testFor() //testForIf() //test2For() //testForYield() testMatch() } // if def min(x:Int,y:Int):Int={ var a=x if(x>y) a=y return a } /** * 格式: for(i <- 数据集合) 其中 <- 可以理解为一个向左指向的符号 * 1 to 4 (1 =<i<=4) * 1 until 4 (1 =<i<=4-1) * 下面结果为 1 2 3 4 */ def testFor()={ for(i<-1 to 4){ println("No: " + i) } } def testForIf()={ for(i<-1 to 4){ if(i%2==0 && i!=2) println("No: " + i) } } def test2For()={ for(i<-1 to 4){ for(j<-1 to 4){ println("No: " + i +j) } } } /** * yield 格式: * for(i <- e) yield E(i) * 或者 * for(i <- e) yield {E(i)} */ def testForYield()={ var No = for(i<- "hello") yield i print(No) } /** * match 功能等同于Java的switch,执行自上而下方式 格式: * => 表达指向含义 * case _ 等同于default * a match{ * case e1 => ... * case e2 => ... * ... * case _ => ... * } */ def testMatch()={ val result = "eggs" match { case "salt" => "pepper" case "chips" => "salsa" case "eggs" => "bacon" case _ => "what??" } print(result) } }
scala数组:
object Array { /** * 变长数组ArrayBuffer * val c = new ArrayBuffer[T]() * c += e1 // c: ArrayBuffer(e1) * c +=(e2,e3) // c: ArrayBuffer(e1,e2,e3) 在数组尾部增加元素 e2 e3 * c +=(e2,e3) // c: ArrayBuffer(e1,e2,e3) 在数组尾部增加元素 e2 e3 * c ++=Array(e4,e5) // c: ArrayBuffer(e1,e2,e3,e4,e5) 在数组尾部增加数组内容为e4,e5 * c.trimEnd(1) // c: ArrayBuffer(e1,e2,e3,e4) 在数组尾部移除最后一个元素 * c.insert(2,e3)// c: ArrayBuffer(e1,e2,e3,e3,e4) 在第二个元素位置后插入e3 * c.insert(2,e1,e2,e3)// c: ArrayBuffer(e1,e2,e1,e2,e3,e3,e3,e4) 在第二个元素位置后插入e1,e2,e3 * c.remove(3) // c: ArrayBuffer(e1,e2,e1,e3,e3,e3,e4) 移除第三个元素后的一个元素 * c.remove(3,2) // c: ArrayBuffer(e1,e2,e1,e3,e4) 移除第三个元素后的2个元素 * D = c.toArray // 把变长数组转换成定长数组 * E = A.toBuffer // 定长数组转换为变长数组 * * 数组遍历: * for(i <- 0 to (c.length-1)) println(c(i)) // 通过角标方式获取数组内数据 * * */ def main(args: Array[String]): Unit = { val A = new Array[Int](10) A(7) = 57 val B = A.toBuffer B.remove(2,2) println("A" + A) println("B" + B) // (0, 1, 4, 5, 6, 57, 0, 0) for(i <- 1 to (B.length,2)) print(B(i)) } }
相关推荐
### Scala语言入门知识点详解 #### 一、Scala简介 Scala是一种多范式的编程语言,它融合了面向对象编程和函数式编程的特点。Scala语言的设计旨在提高代码的可读性和表达能力,同时保持高性能。Scala运行在Java平台...
scala 入门PDF文档,编码规范文档。 Scala 是一门多范式(multi-paradigm)的编程语言,设计初衷是要集成面向对象编程和函数式编程的各种特性。 Scala 运行在 Java 虚拟机上,并兼容现有的 Java 程序。
本资源摘要信息为 Scala 入门学习教程,旨在帮助读者快速掌握 Scala 语言的基本概念和编程技术。该教程面向具有一定编程经验的读者,尤其是 Java 语言的开发者。 知识点一:Scala 语言简介 Scala 语言是一种现代化...
资源名称:Scala编程语言从入门到精通资源目录:【】DesignOfScala【】ExcitedScala_7(1)【】lift-lift_23_sbt-cf313e1【】ScalaTutorial-zh_CN【】Scala_2.7.6_API【】Scala向导(前13章)【】Scala向导(前15章)-p...
在快速入门章节中,给出了使用IDEA开发“hello, world”程序的示例,并介绍了Scala程序的执行流程,还用Java编写了模拟代码,以此帮助初学者理解Scala语言的基本结构和概念。 书中的知识点还包括了Scala语言的转义...
9. **Akka框架**:虽然不是Scala语言的一部分,但Akka是一个流行的用Scala编写的并发和分布式计算框架,它利用Scala的Actor模型实现了高性能的并发处理。 10. **泛型**:Scala支持泛型,允许定义通用的类和方法,...
《Scala语言核心编程》是尚硅谷教育机构韩顺平老师主讲的一门课程,主要针对Scala这门多范式编程语言进行深入讲解。Scala是一种静态类型的编程语言,它融合了面向对象和函数式编程的概念,设计目标是提供一种简洁、...
IntelliJ IDEA等流行的IDE提供了Scala插件,支持Scala语言的开发工作。插件的安装通常包括下载Scala插件文件,并将其放置到IDE的插件目录中,随后按照IDE的插件安装向导进行安装。 总之,Scala作为一种结合了面向...
本篇文章主要面向有一定Java开发经验的程序员,旨在帮助他们入门Scala。 ### 1. Scala简介 Scala是由Martin Odersky设计的一种静态类型的编程语言,它的名字来源于"Scalable Language"的缩写,表明它能够从小规模...
【课程大纲】第1讲-Spark的前世今生第2讲-课程介绍、特色与价值第3讲-Scala编程:基础语法第4讲-Scala编程:条件控制与循环第5讲-Scala编程:函数入门第6讲-Scala编程:函数入门之默认参数和带名参数第7讲-Scala编程...
### Scala编程语言详解知识点 #### 一、Scala简介与特性 **Scala** 是一门结合了面向对象编程和函数式编程特点的多范式编程语言。它由 Martin Odersky 在瑞士洛桑联邦理工学院(EPFL)开发。Scala 的名称来源于 ...
【大数据课程-Scala编程基础-1.Scala语言初识】是针对初学者设计的一门课程,旨在教授如何入门Scala编程,特别适合已有Java基础的学员。Scala是一种在2001年由洛桑联邦理工学院(EPFL)的编程方法实验室研发的语言,...
Scala是一种强大的多范式编程语言,它融合了面向对象和函数式编程的特性,被广泛应用于大数据处理、并发系统和Web开发等领域。本教程“Scala从入门到进阶”旨在帮助初学者逐步掌握这一现代编程工具的核心概念和高级...