`
heipark
  • 浏览: 2097588 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

《scala程序设计》语法糖笔记

 
阅读更多

 

循环
# 方法一
for (i <- 1 until 3) {
  print(i + ",")
}

# 方法二
(1 to 3).foreach(i => print(i + ","))

 

 

    元组(Tuple)

object Hello {

  def main(args: Array[String]): Unit = {
    val (firstName, lastName, email) = getPersonInfo()

    println(firstName)
    println(lastName)
    println(email)
  }
  def getPersonInfo() = {
    ("jerry", "zhang", "jerry@xx.com")
  }
}

    或者

 

object Hello {

  def main(args: Array[String]): Unit = {
    val persion = getPersonInfo()

    println(persion._1)
    println(persion._2)
    println(persion._3)
  }
  def getPersonInfo() = {
    ("jerry", "zhang", "jerry@xx.com")
  }
}

 

    多行字符串

 

val str = """123
      345
      456"""
print(str)

>>> 输出
123
      345
      456

// 去除每行"|"前面的的空白
val str = """123
      |345
      |456"""
print(str.stripMargin)

>>>输出:
123
345
456

==与eq
scala中"=="方法等同java中equals()方法
scala中"eq"方法等同java中==操作符

 

val vs. var
val: 不可变变量(不可修改val引用指向另一个对象)
var: 可变变量

优先使用val,这样可以提升不变性和函数式风格(这句话,不太理解)
 

 

 

 


分享到:
评论

相关推荐

    Scala程序设计(第2版)英文原版Programming.Scala.2nd.Edition.2014.12.pdf

    《Scala程序设计(第2版)》这本书详细介绍了Scala编程语言,并通过大量的代码示例向读者展示了如何高效地使用Scala语言及其生态系统。本书的目标读者是包括初学者和高级Scala开发者在内的所有用户。 Dean Wampler...

    Scala学习笔记(全)

    ##### 2.2 编写第一个Scala程序 ```scala object HelloWorld { def main(args: Array[String]) { println("Hello World!!") } } ``` - **编译**:`scalac HelloWorld.scala` - **运行**:`scala HelloWorld` #...

    scala的操作笔记

    ### Scala的操作笔记 #### 一、课程目标与学习路径 本课程旨在通过三个阶段的目标来逐步深入学习Scala语言,最终能够灵活运用Scala进行Spark程序的开发,并具备阅读Spark内核源码的能力。 - **初级目标**:掌握...

    scala学习资料

    作为Java平台上的一个成员,Scala程序可以在Java虚拟机(JVM)上运行,并且能够无缝地与Java代码互操作,这使得它在处理大数据、分布式计算以及复杂系统开发等领域中广泛应用。 Scala的核心特性包括: 1. 面向对象...

    尚硅谷_韩顺平_Scala语言核心编程_PDF密码解除1

    通过编写简单的示例程序,可以快速上手Scala编程。 总的来说,Scala是一门强大且富有创新的语言,它将面向对象和函数式编程的精髓结合在一起,为开发者提供了丰富的工具和概念,以应对现代软件开发的复杂性。学习...

    Scala-学习资料-mht.rar

    Scala这个名字是“Scalable Language”的缩写,设计目标是提供一种简洁、类型安全且具有高级编程抽象的编程语言。它的语法与Java类似,但更加强调代码的表达性和简洁性,通过模式匹配、高阶函数等特性,使代码更加可...

    学习笔记.pdf

    在编写第一个 Scala 程序时,需要了解 Scala 语言的基本语法和数据类型。使用 Scala IDE 可以提高开发效率和代码质量。 6. Scala 语言和 Java 语言的关系 Scala 语言和 Java 语言是紧密相关的,Scala 语言是基于 ...

    scala-learn:scala学习笔记

    Scala通过Akka库提供了基于Actors的并发模型,Actors是轻量级的并发实体,通过消息传递进行通信,这使得编写并发程序变得简单且安全。 8. **类型系统** Scala的类型系统十分强大,包括类型推断、类型参数、隐式...

    scala与spark基础

    Scala是一种多范式编程语言,以其强大的函数式编程特性而受到欢迎,尤其在大数据处理领域,它作为Apache Spark的主要编程语言,使得开发人员能够构建高性能、可扩展的数据处理应用程序。 Scala融合了面向对象和函数...

    Scala中文经典教程,适合快速入门

    面向对象编程主要关注于创建以对象为中心的程序设计,强调对象的封装、继承和多态等特性。作为面向对象编程的典型代表,Java程序员应该已经具备了这些基础知识。 随后,教程通过经典的"Hello World"程序演示了Scala...

    Spark笔记,发出来希望可以帮到各位

    创建Scala程序的步骤包括创建新项目、选择源代码包、创建Scala类,如Class、Object或Trait。 接着,进入Scala的基础语法部分,包括声明值和变量。在Scala中,变量分为可变变量(var)和不可变常量(val)。数据类型方面...

    快学Scala 第2版.zip

    10. ** Spark与Scala结合**:讲解如何使用Scala来编写Spark应用程序,包括DataFrame、RDD和Spark SQL等关键组件。 11. ** 实战项目**:可能包含实际案例或项目,让读者将所学知识应用于解决实际问题。 通过阅读...

    Spark学习笔记

    - **优雅性**: Scala的设计注重API的简洁与易用,这有助于提高开发者的工作效率。 - **高效性**: 相较于Java,Scala能够用更少的代码完成相同的功能,同时由于它是静态编译的语言,因此在执行速度上通常优于动态解释...

    scala-with-cats:scala with cats一书的笔记,习题

    Cats是Scala生态系统中的一个核心库,专注于提供类型类和Monad等抽象,用于构建类型安全、可组合的函数式程序。这本书《Scala with Cats》深入介绍了如何利用Cats库在Scala中实现函数式编程。 首先,让我们来看看...

    Xitrum学习笔记

    Xitrum是一个基于Scala构建的高性能、可扩展的Web框架,它结合了Java的稳定性和Scala的灵活性,适用于构建现代化的、高并发的Web应用程序。以下是对各章节主题的详细解读: 1. **Action过滤器**(Xitrum学习笔记15 ...

    笔记实验六,spark,大数据分析

    - **实验目标**:通过 Scala 程序在指定目录下随机生成大量包含随机英文句子的文件。 - **实现步骤**: - 定义一个字符串列表 `strList` 包含多个英文句子。 - 使用 `while` 循环生成指定数量的文件。 - 在每次...

    DALC_Scala

    学习者需要理解 Actor 如何在系统中通信,以及如何设计和管理并发程序。 6. **Jupyter Notebook**:标签 "JupyterNotebook" 表示学习或教学过程可能使用了 Jupyter Notebook,这是一个交互式的计算环境,便于编写和...

    spark演示文档

    根据提供的信息,我们可以总结出以下关于Spark...以上便是基于所提供的部分文件内容总结出来的关于Spark的基础知识点,这些内容涵盖了Spark的基础概念、Scala的基本语法以及RDD的操作等方面。希望对学习Spark有所帮助。

    大数据学习笔记

    ### 大数据学习笔记知识点概览 #### 第一部分:Spark学习 ##### 第1章:Spark介绍 - **1.1 Spark简介与发展** - **背景**:随着大数据处理需求的增长,传统的Hadoop MapReduce框架虽然提供了强大的计算能力,但...

Global site tag (gtag.js) - Google Analytics