码迷,mamicode.com
首页 > 其他好文 > 详细

假期二

时间:2020-02-02 23:31:13      阅读:247      评论:0      收藏:0      [点我收藏+]

标签:location   shel   shuffle   main   cas   center   测试文件   def   tostring   

Spark提供的数据集操作类型有很多种,大致分为:转换操作和行动操作两大类,即对RDD的操作,RDD相关操作较多,这里不做表述。此外各个处理节点之间的通信模型不再像Hadoop只有Shuffle一种模式,用户可以命名、物化,控制中间结果的存储、分区等。下载完Spark后,启动spark shell 然后建在了spark自带的本地测试文件,以及简单的RDD操作和退出spark shell。

case class Point(var x:Double,var y:Double) extends Drawable{

def shift(deltaX:Double,deltaY:Double){x+=deltaX;y+=deltaY}
}
trait Drawable{
def draw(){println(this.toString)}
}
abstract class Shape(var location:Point){//location是Shape的一个可变字段
def moveTo(newLocation:Point){ //默认实现,只是修改位置
location = newLocation
}
 def zoom(scale:Double)
}
class Line(beginPoint:Point,var endPoint:Point) extends
Shape(beginPoint) with Drawable{
override def draw(){
println(s"Line:(${location.x},${location.y})--(${endPoint.x},${endPoint.y})")
}
override def moveTo(newLocation:Point){
endPoint.shift(newLocation.x - location.x,newLocation.y -
location.y) //直线移动时,先移动另外一个端点
location = newLocation //移动位置
}
override def zoom(scale:Double){
val midPoint = Point((endPoint.x + location.x)/2,(endPoint.y +
location.y)/2//求出中点,并按中点进行缩放
location.x = midPoint.x + scale * (location.x - midPoint.x)
location.y = midPoint.y + scale * (location.y -midPoint.y)
endPoint.x = midPoint.x + scale * (endPoint.x - midPoint.x)
endPoint.y = midPoint.y + scale * (endPoint.y -midPoint.y)
}}
class Circle(center:Point,var radius:Double) extends Shape(center)
with Drawable{
override def draw(){
println(s"Circle center:(${location.x},${location.y}),R=$radius")
}
override def zoom(scale:Double){
radius = radius*scale //对圆的缩放只用修改半径
} }
object MyDraw{
 def main(args: Array[String]) {
 val p=new Point(10,30)
p.draw;
val line1 = new Line(Point(0,0),Point(20,20))
line1.draw
line1.moveTo(Point(5,5))
line1.draw
line1.zoom(2)
line1.draw
val cir= new Circle(Point(10,10),5)
cir.draw
cir.moveTo(Point(30,20))
cir.draw
cir.zoom(0.5)
cir.draw
 } }
技术图片

 

 

 

假期二

标签:location   shel   shuffle   main   cas   center   测试文件   def   tostring   

原文地址:https://www.cnblogs.com/jbwen/p/12254031.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!