栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

Scala语言基础

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Scala语言基础

Martin Odersky
scala最适合用在算法描述领域,java适合用在指令编程领域。

语言基础

scala独有的两招:函数式编程、简单的并发编程
函数是scala语言中的一等公民

// 在 Scala 中,是没有 static 这个东西的,但是它也为我们提供了单例模式的实现方法,那就是使用关键字 object
object HelloWorld {
  def main(args: Array[String]): Unit = {
  
    println("hello world")

    val myVal : String = "Foo";
    var myVal1 = "Foo";

	// 这里的下划线代表了集合中的“某(this)”一个元素。这个用法很常见,在foreach等语句中也可以使用
	val newArry= (1 to 10).map(_*2)

	// https://docs.scala-lang.org/zh-cn/overviews/collections/arrays.html
	// Scala数组Array[Int]可看作Java的Int[]
	// Array[String]可看作Java的String[]
	// Scala数组是一种泛型。即可以定义一个Array[T],T可以是一种类型参数或抽象类型
	val a1 = Array(1, 2, 3)
	val a2 = a1 map (_ * 3)
	val a3 = Array("Hi", "I", "heard", "about", "Spark")
	
  }
}
函数式编程范式

map
filtermap
flatmap

foreach
reduce
sum

foreach只是用在不需要对集合执行映射操作,但需要遍历集合时才用到。总而言之,foreach用于遍历集合,而map用于映射(转换)集合到另一个集合

DataStream.flatmap(_.split(" ")).map((_, 1)).keyBy(0).sum(1)

创建匿名函数
=>右边是函数体,左边表示函数的参数类型

data.filter(_.nonEmpty)
data.filter(x => x!=null)

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/275025.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号