![](https://img.haomeiwen.com/i7559788/29e5dce63d56fdd3.png)
一:方法的定义
![](https://img.haomeiwen.com/i7559788/bd11c703bc0a5626.png)
def 方法名(参数名:参数类型):返回值类型 = { //括号内的叫做方法体 //方法内的最后一行为返回值,不需要使用return}
![](https://img.haomeiwen.com/i7559788/53f842ec8dd1d960.png)
☆注意点 if else比较多的时候注意返回值
调用没有入参的函数时,可以不用写括号
![](https://img.haomeiwen.com/i7559788/f5d4a33505a3f97d.png)
Scala默认参数的使用
默认参数:在函数定义时,允许指定参数的默认值
![](https://img.haomeiwen.com/i7559788/9bee5f3f3ff31d14.png)
![](https://img.haomeiwen.com/i7559788/961e59c046a83367.png)
不传值时,默认值为PK,传值时使用传值值
命名参数的使用(顺序没有关系,名字对应上,如果不带名字则是默认顺序)不建议使用
![](https://img.haomeiwen.com/i7559788/b8b15eedcbebef6b.png)
![](https://img.haomeiwen.com/i7559788/6c6f28a987192e37.png)
可变参数的使用:
JDK5+: 可变参数 在java中 可变参数为 … 在scala中为 *
![](https://img.haomeiwen.com/i7559788/c280022adc477e35.png)
Spark中的使用:column可以传多个
![](https://img.haomeiwen.com/i7559788/8b2bf9e46603867b.png)
条件表达式
If …else…
![](https://img.haomeiwen.com/i7559788/77ab77776f12860d.png)
![](https://img.haomeiwen.com/i7559788/e726beef9a1aecee.png)
循环表达式
- To(全包含) 1 to 10 === 1.to(10)
![](https://img.haomeiwen.com/i7559788/e29333095fc5aeb0.png)
- Range(左包含)
![](https://img.haomeiwen.com/i7559788/58a07dcba830a8ea.png)
![](https://img.haomeiwen.com/i7559788/2287e0cdf40a4788.png)
![](https://img.haomeiwen.com/i7559788/1ff28565eb966037.png)
step不能为0
- Until 底层调用的range
![](https://img.haomeiwen.com/i7559788/32142d096ae468ec.png)
For循环
![](https://img.haomeiwen.com/i7559788/7eb81e3d680bd231.png)
可以在其中继续做判断
![](https://img.haomeiwen.com/i7559788/07cd9fd23245822b.png)
数组循环
![](https://img.haomeiwen.com/i7559788/7d4642791e4e60a1.png)
另一种写法:
![](https://img.haomeiwen.com/i7559788/f3e0edfb95e08576.png)
While循环:
![](https://img.haomeiwen.com/i7559788/5bb8fa5688001cdc.png)
很难说什么是办不到的事情,因为昨天的梦想,可以是今天的希望,并且还可以成为明天的现实。
网友评论