spark函数基础

spark函数基础,第1张

spark函数基础

二元组置换(特殊)

val t=new t1[String,Int]("chen",26)//val t=("chen",26)

println(t._1,t._2)

val swap: (Int, String) = t.swap//置换,二元组特殊方法,其他没有

println(swap._1,swap._2)

println(swap._1)

部分函数

def  alarmMsg(title:String,content:String,height:Double):Unit={

println(title+"t"+content+":"+height)

}

alarmMsg("警报","空气甲醛浓度",21.42d)--->警报    空气甲醛浓度为:21.42

val title="警报"

def alarmMsg2=alarmMsg(title,content:String,height:Double)

alarmMsg2("空气甲醛浓度为:",21.43d)---> 警报    空气甲醛浓度为:21.32

def alarmMsg3=alarmMsg(content,height:Double)

alarmMsg3(12.45d) ---> 警报    空气甲醛浓度为:21.32

偏函数

def funPartition2:PartialFunction[Int,String]={

case 1=>"优秀"

case 2=>"良好"

case 3=>"合格"

case _=>"不及格"

}

println(funPartition2(3))---->合格

println(funPartition2(4))---->不及格

val arr:Array[Int]=Array(1,3,4,3,2)

val strings:Array[String] = arr.collect(funPartition2)

遍历

println(strings.toList)

for(in<-strings){

println(in)

}

函数作为返回值

def funTest():(String,String)=>String={

        def funDemo(str:String,str1:String):String={

            str+"@@"+str1

}

funDemo

}

println(funTest()("hello","world"))

函数作为参数

def funTest1(f:(Int,Int)=>Int)):Int={

val a=100

val b=50

f(a,b)

}

val sum=(a:Int,b:Int)=>a+b

val ji=(a:Int,b:Int)=>a*b

println(sum(2,3))---->5

println(funTest(sum)))---->150

println(funTest(ji)))---->5000

递归函数

def  ji(num:Int):Int{

if(num==1) 1     

else num*ji(num-1)

}

欢迎分享,转载请注明来源:内存溢出

原文地址: https://www.outofmemory.cn/zaji/5689098.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存