Scala基础

一、Scala 基础学习:
1.全面向对象:所有的值都是对象
2.函数也是值
3.类和特征,多继承
4.定义量 var (变量)val(常量)
5.定义函数def
6.函数参数 => 是在使用的时候执行 参数lazy
7.循环 map filter foreach …
8.数据类型 只有一类 any(AnyVal,AnyRef)
8.1Tuple() 一共到Tuple22
8.2Collection

下面就用一些通俗的例子来说明用法吧
Map函数是遍历通过打印_得到每一个值 是当前所有值
(1 to 100 by 5).map(println(
))
Scala基础

(1 to 100)filter(%2==1)foreach(println())
foreach和map都是用于遍历集合对象,并对每一项执行指定的方法。而两者的差异在于:foreach无返回值
Scala基础

until是不包含5的,to包含5
Scala基础

数据通过箭头一指 就放到i里面了
Scala基础

二、Scala 常用类型和函数
只有一种数据了类型 any
Scala基础

Tuple() 一共到Tuple22 到23就报错了 Tuple 里的值下标是从1开始的
Scala基础

Scala基础
在元组后面拼接一个数字
Scala基础
键值对方式
Scala基础

Concat()拼接 结果为(1,2,4,6)
Scala基础

groupBy(function) function返回key

val a = sc.parallelize(1 to 9, 3)
a.groupBy(x => { if (x % 2 == 0) "even" else "odd" }).collect//分成两组
/*结果 
Array(
(even,ArrayBuffer(2, 4, 6, 8)),
(odd,ArrayBuffer(1, 3, 5, 7, 9))
)

Slice() 从下标为3开始 分段取
Scala基础

Sorted() 排序
Scala基础

SortWith() 按照自己的想法排
Scala基础

SortBy() 可以指定排
Scala基础
Grouped 每一组元素为多少
Scala基础

Sliding () 123 234 345 456 每个数字向下划一下
Scala基础

冒号 要在集合的一方 结果为2.7.5
Scala基础
2,7,5,9
Scala基础
把5追加到2.7里面
Scala基础
$是占位符 s就是一个标识,可以直接在字符串中实用变量
Scala基础