windows版本
C:\Program Files\scala\bin>scala -version Scala code runner version 2.10.3 -- Copyright 2002-2013, LAMP/EPFL
基本类型及操作
import scala.collection.mutable.Set import scala.collection.immutable.HashSet import scala.collection.mutable.Map object Hello { //函数 def max(x: Int, y: Int): Int = { if(x > y) x else y } //循环:while / for / foreach三种方式 def loop(args: Array[String]) { var i = 0 while(i < args.length) { println(args(i)) i = i + 1 } /* for(i <- 0 until args.length) { println(args(i)) } args.foreach { arg => println(arg) } */} //数组 def useArray(){ val greetStrings = new Array[String](3)//不推荐这种创建数组方法 greetStrings(0) = "Hello" greetStrings(1) = ", " greetStrings(2) = "world!\n" greetStrings.update(0, "Hi")//同上 greetStrings.update(1, ", ") greetStrings.update(2, "world!\n") greetStrings(0) = "Hey" for (i <- 0 to 2) print(greetStrings(i)) val betterStrings = Array("Hello",", ","World\n")//推荐此类用法 } //列 def useList(){ val oneTwo = List(1, 2) val twoThree = List(2, 3) val oneTwoThree = 1 :: twoThree //拼接元素和数组 val oneTwoThreeFour = oneTwo ::: twoThree //拼接数组和数组 val thrill = "Will" :: "fill" :: "until" :: Nil println(thrill) // List(Will, fill, until) thrill.drop(2) //Until thrill(2) //Until thrill.dropRight(2) //Will thrill.count(s => s.length == 4) // return 2 thrill.exists(s => s == "until") // true thrill.filter(s => s.length == 4) // List("Will", "fill") //thrill.remove(s => s.length == 4) // List("until") thrill.forall(s => s.endsWith("l")) // true (all endwith l) thrill.head // Will thrill.init // return all without last List("Will", "fill") thrill.tail // return all without first List("fill", "until") thrill.length // 3 thrill.last // until thrill.isEmpty // false thrill.map(s => s + "y") // List("Willy", "filly", "untily") thrill.mkString(", ") // "Will, fill, until" thrill.reverse // List("until", "fill", "Will") //thrill.sort((s, t) => s.charAt(0).toLowerCase < t.charAt(0).toLowerCase) // List("fill", "until", "Will") 编译有错 } //关联数组 def useOther(){ //tuple 可以存放不同类型 val pair = (99, "Luftballons") println(pair._1) println(pair._2) //sets val movieSet = Set("Hitch", "Poltergeist") movieSet += "Shrek" println(movieSet) //hashset val hashSet = HashSet("Tomatoes", "Chilies") println(hashSet + "Coriander") //map val treasureMap = Map[Int, String]() treasureMap += (1 -> "Go to island.") treasureMap += (2 -> "Find big X on ground.") treasureMap += (3 -> "Dig.") println(treasureMap(2)) } def main(args: Array[String]): Unit = { //变量|常量 var msg1 = "message one" //scala自动匹配类型 var msg2 : java.lang.String = "message two" //scala指定类型 var msg3 : String = "message three" //可以直接引用java.lang包 msg1 = "message one changed" val c_msg1 = "constant message one" //c_msg1 = "constant message one cann't be changed" //使用java类 val big = new java.math.BigInteger("12345") loop(args) println(max(3,4)) useArray() useList() useOther() } }
类,单例(需要编译运行scalac scala)
class Tool { def max(x: Int, y: Int): Int = { if(x > y) x else y } } object Tool2{ def min(x: Int, y: Int): Int = { if(x < y) x else y } } object Hello { //函数 def main(args: Array[String]): Unit = { println("hello") val t = new Tool() println(t.max(3,4)) println(Tool2.min(3,4)) } }
相关推荐
Scala 基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程 以下是根据给定的文件信息生成的相关知识点: Scala 介绍 Scala 是一种多范式的编程语言,由 Federico Mena 和 Martin Odersky 于 2001 年...
读书笔记:快速入手的Scala基础语法学习笔记
虽然Scala是基于Java的,但Scala提供了一套与Java不同的语法和类库,这要求学习Scala的开发者了解其与Java的相同点和不同点。 为了使用Scala进行开发,需要进行环境搭建。这包括安装Java开发工具包(JDK)版本1.8或...
scala是一种基于JVM的面向对象的函数编程,scala编程相对于java而言代码整洁、开发效率更高。 其中scala优点主要有: 1:面向对象,可以定义class,通过new调用实例对象使用。 2:兼容java,在scala中可以直接调用...
值得注意的是,虽然Notepad++提供了基本的语法高亮,但相比专门的Scala集成开发环境(IDE),如IntelliJ IDEA或Eclipse,其功能可能较为有限。如果你需要更完整的调试、测试和重构支持,建议还是使用专业的IDE。但...
### Scala语法简明教程知识点详解 ...通过以上内容,我们不仅了解了Scala的历史背景和发展现状,还掌握了Scala的基础语法知识及其与其他语言的异同。这对于希望快速入门Scala的开发者来说是非常宝贵的资料。
Scala 基础语法 如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法。 Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的。 我们可以认为 Scala 程序是...
Scala 函数式编程专题 -- Scala 基础语法介绍 本文主要介绍 Scala 基础语法的相关知识点,旨在帮助读者更好地理解和学习 Scala 编程语言。 一、Scala 语言简介 Scala 是一种现代化的、多范式的编程语言,运行于 ...
这两份文档为学习Scala提供了一套全面的资源,涵盖了从基础到高级的各种主题,无论你是初学者还是有经验的开发者,都能从中受益匪浅。通过深入阅读和实践,你可以掌握Scala的强大功能,并应用于实际的软件开发项目中...
在本文中,我们将探讨如何在Notepad++中设置Scala语言的语法高亮,以及相关的配置细节。Notepad++是一款流行的免费源代码编辑器,支持多种编程语言,包括Scala。通过自定义用户定义的语言(User Define Lang)配置,...
在课程内容上,Scala编程基础分为三个模块:Scala基础语法、Scala中的集合和函数以及Scala面向对象。每个模块都旨在帮助学员理解Scala编程的核心概念,并能在实际开发中运用。 第一模块,Scala基础语法,是学习...
3. **Scala基本语法:** - **模式匹配:** Scala的模式匹配功能允许我们对值进行解构,便于处理复杂数据结构。 - **case类:** Scala的case类简化了创建不可变对象的过程,并且与模式匹配紧密配合。 - **高阶函数...
scala 基础语法,flink的使用方式
Swift的字面量语法包含整数、浮点数和字符串,而Scala也支持这些基础类型的字面量。不过Scala支持字符串插值,可以将变量或表达式嵌入字符串中,例如使用`$x+$y=${x+y}`。 Swift使用数组和字典字面量语法,而Scala...
#### 二、Scala基础语法 ##### 1. 声明值和变量 Scala中的值和变量可以通过`val`和`var`关键字进行声明: - `val`: 定义一个不可变的值(即常量)。 - `var`: 定义一个可变的变量。 ```scala val num = 0 var ...
Scala基本语法** Scala的语法简洁而富有表现力,支持变量声明、常量、函数定义、类和对象的创建。例如,`val`用于声明不可变变量,`var`用于声明可变变量。函数定义可以使用匿名函数和高阶函数,类和对象通过case ...
这包括掌握Scala的基础语法以及如何结合Spark进行数据处理。 2. **中级目标**:能够独立完成一个简单的Spark通信框架的设计与实现。这不仅要求学生理解Spark的工作原理,还需要具备一定的架构设计能力。 3. **高级...