Scala与Java的关系:
一:它们都是基于JVM的,但Scala可以调用Java的任何功能,比如Spark运行在Hadoop上,它可以调用Hadoop上的一切功能。
二:你可以认为Scala它是一个升级版的Java,因为Scala它本身是一门支持面向对象的语言,在Scala中,一切皆对象,它是一门纯面向对象的语言,同时Scala也是面向对象以及函数式结合的语言。
大数据的开发语言是Scala,原因如下:
一:大数据的本身是计算数据,而Scala即有面向对象组织项目工程的能力,又有计算数据的功能。
二:现在大数据事实上的计算标准框架Spark,它是用Scala开发的,因为计算数据,Scala它是函数式编程,它实现算法非常简洁优雅。
例:kafka,它是一个消息中间件,如果外部数据要流进大数据中心,我们一般都要用kafka作适配器,那如果大数据中心的数据流到外部,也是用kafka(如Spark计算的数据要交给HBASE或MySql,期间我们都会用kafka),很多的大数据组件都是用的Scala编写的,SO,如果你想成为一个顶级的大数据开发高手,你一定要掌握Scala。
对Scala语法的基本操作:
Scala>2*3.5
Res0:Double=7.0 //可以自动得知类型
Res0.to //按Tab键可以出现提示
val age1,age2,age3=0 //1行多个变量申明,val是不可变变量
var age=0 //var是可变变量
age=1 //重新赋值
0.to(5) //To方法 结果为一个数据集合Range<0,1,2,3,4,5>
min(20,4) //函数的调用 求一个最小值
printf("%s is the future's Framwork ","Spark") //输出
readLine //读入
readLine(“ xxx”)
readInt
If 语句:
val age=19
val buffer