`
come_for_dream
  • 浏览: 120341 次
  • 性别: Icon_minigender_1
  • 来自: 长沙
社区版块
存档分类
最新评论

Scala基本语法初探

 
阅读更多

Scala基本语法初探

       学习Spark不得不学习Scala这门神奇的语言,这次就匆匆忙忙做下总结吧。

Scala是一种基于JVM的语言,是函数是编程和面向对象编程的结合,是一个静态语言,纯静态语言。因为会生成和java相同的class字节码所以它与Java之间可以互相调用。
Scala有一个解释器。
1.定义常量的方法,在这里常量的方法是不能够改变的
val gender="male"
2.定义变量的方法
var lession="chinaHadoop"
3.定义函数的方法,函数的最后一个值被默认为返回值
  main函数要定义在object里面
  def hello(name:String="Spark"):String={
  "Hello :"+name;
  }

 

 我们可以这样调用
  println(hello("one"))  打印:Hello :one
  我们也可以使用它的默认参数,也就是我们在不传参的情况下这里会默认给你分配一个参数、
  println(hello())  打印:Hello :Spark

  我们可以定义这样定义一个函数:
  val add=(x:Int,y:Int)=>x+y
  它是匿名函数,因为函数在Scala里面是一等公民,那么一个函数赋值给一个常量add也是见怪不怪的事情
  那么他可以这样调用
  add(1,2)
  那么我们也可以这样来定义一个函数
  def add2(x:Int)(y:Int)=x+y
  它是函数的克里化,克里化在以后再说那么我们可以这样调用它
  val value = add2(3)(4)
  哈,好神奇的语言

  4.有没有尝试过在函数的()里面条用过函数???
    哈Scala让我见识到了
def printEveryChar(c:String*)={
  c.foreach(x=>println(x))
}
其中参数(c:String*)是表示可以传入一系列的String类型的参数
那么我们可以这样调用
 printEveryChar("one","two","three","four")
 打印结果
 one
 two
 three
 four


if条件判断
val x=1
val a=if(x>0)1 else 0
那么a的值就是1,可见判断语句变得非常简洁

循环
1.while循环

var (n,r)=(10,0)
while(n>0){
    r=r+n
    n=n-1
    println(r)
}
println(r)

 
    for循环

for(i<- 1 to 10){
    println(i)
}

for(i<- 1.to(10)){
    println(i)
}
/////以上打印1到10,一下打印1到9
for(j<- 1 until 10 ){
    println(j)
}


另外
for(i<- e1){
 for(j<- e2){
   ifB{
   E(i,j)
   }
 }
}

可以简化为
for(i<- e1;j<- e2;if B) E(i,j)

 

 

Scala之match

 

匹配match表达式
a match{
    case e1=>E1
    case e2=>E2
    ...
}

例如:

 val tmp = 4 match {
      case 1 => "one"
      case 2 => "two"
      case 3 => "three"
      case 4 => "four"
    }
 println(tmp)

 
 
 则输出为four

 

0
0
分享到:
评论

相关推荐

    Notepad++里设置scala的语法高亮(包含使用说明)

    值得注意的是,虽然Notepad++提供了基本的语法高亮,但相比专门的Scala集成开发环境(IDE),如IntelliJ IDEA或Eclipse,其功能可能较为有限。如果你需要更完整的调试、测试和重构支持,建议还是使用专业的IDE。但...

    Scala语法入门.pdf

    虽然Scala是基于Java的,但Scala提供了一套与Java不同的语法和类库,这要求学习Scala的开发者了解其与Java的相同点和不同点。 为了使用Scala进行开发,需要进行环境搭建。这包括安装Java开发工具包(JDK)版本1.8或...

    Scala基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程.pptx

    Scala 基础语法课件汇总整本书电子教案全套课件完整版ppt最新教学教程 以下是根据给定的文件信息生成的相关知识点: Scala 介绍 Scala 是一种多范式的编程语言,由 Federico Mena 和 Martin Odersky 于 2001 年...

    读书笔记:快速入手的Scala基础语法学习笔记.zip

    读书笔记:快速入手的Scala基础语法学习笔记

    快学 scala 语法大全

    此文档是scala的语法大全,一共分为22章,控制结构,特质,高阶函数,集合,模式匹配,样例类,解析,actor等都包括在内。

    spark源码之scala基础语法demo

    scala是一种基于JVM的面向对象的函数编程,scala编程相对于java而言代码整洁、开发效率更高。 其中scala优点主要有: 1:面向对象,可以定义class,通过new调用实例对象使用。 2:兼容java,在scala中可以直接调用...

    scala 语法参考中文pdf

    这两份文档为学习Scala提供了一套全面的资源,涵盖了从基础到高级的各种主题,无论你是初学者还是有经验的开发者,都能从中受益匪浅。通过深入阅读和实践,你可以掌握Scala的强大功能,并应用于实际的软件开发项目中...

    Scala语法简明教程

    ### Scala语法简明教程知识点详解 ...通过以上内容,我们不仅了解了Scala的历史背景和发展现状,还掌握了Scala的基础语法知识及其与其他语言的异同。这对于希望快速入门Scala的开发者来说是非常宝贵的资料。

    Notepad++里设置scala的语法高亮_20160323.docx

    在本文中,我们将探讨如何在Notepad++中设置Scala语言的语法高亮,以及相关的配置细节。Notepad++是一款流行的免费源代码编辑器,支持多种编程语言,包括Scala。通过自定义用户定义的语言(User Define Lang)配置,...

    Scala 基础语法

    Scala 基础语法 如果你之前是一名 Java 程序员,并了解 Java 语言的基础知识,那么你能很快学会 Scala 的基础语法。 Scala 与 Java 的最大区别是:Scala 语句末尾的分号 ; 是可选的。 我们可以认为 Scala 程序是...

    Scala函数式编程专题--scala基础语法介绍

    Scala 函数式编程专题 -- Scala 基础语法介绍 本文主要介绍 Scala 基础语法的相关知识点,旨在帮助读者更好地理解和学习 Scala 编程语言。 一、Scala 语言简介 Scala 是一种现代化的、多范式的编程语言,运行于 ...

    Swift和Scala语法的比较

    Swift的字面量语法包含整数、浮点数和字符串,而Scala也支持这些基础类型的字面量。不过Scala支持字符串插值,可以将变量或表达式嵌入字符串中,例如使用`$x+$y=${x+y}`。 Swift使用数组和字典字面量语法,而Scala...

    Scala基础.pdf

    Scala语言的上述特点和学习动机,以及必要的环境配置和基础语法,是初学者入门Scala的基石。对于有一定Java基础的人来说,Scala能够提供更加高效和简洁的编程体验,尤其在处理大规模数据处理和复杂系统开发时显示出...

    大数据课程-Scala编程基础-1.Scala语言初识_lk_edit.ppt

    4. 开发第一个Scala程序:创建一个简单的Scala项目,例如计算两个数的和,以此熟悉基本语法和开发流程。 通过这门课程,教师可以提供详细的教学大纲、教案、教学设计和实训文档,帮助学生逐步掌握Scala编程。课程...

    Scala 基础.zip

    1. **基本语法**:Scala的语法与Java有所不同,但也有相似之处。它支持变量声明(val和var)、常量(final val)、类、对象、包和导入等基本概念。学习Scala的第一步就是理解这些基本语法元素。 2. **类型系统**:...

    scala 基础 和flink基础,

    scala 基础语法,flink的使用方式

Global site tag (gtag.js) - Google Analytics