scala的一些知识点(一)

版权声明:数据丁 https://blog.csdn.net/reasery/article/details/83036967
函数:
	val sum = (x:Int,y:Int) => {x+y}
方法:
	def sum(x:Int,y:Int) = {x+y}
	//定义方法
	def m1(x:Int,f:Int=>Int) = f(x)
	def m2(f:(Int,Int) => Int) = f(2,3)
	def m3(f:(Int,Int)=>Int,x:Int,y:Int) = f(x,y)
	//定义函数
	val ff1 = (x:Int) => {x+1}
	val ff2 = (x:Int,y:Int) =>x+y
	val ff3 =(x:Int,y:Int) =>x+y
	//执行
	m1(1,ff1)
	m2(ff2)
	m3(ff3,2,3)
代码块:
	{}
	一个大括号就是一个代码块,代码块都有返回值,就是最后一部分代码
if分支语句:
	val a = 10
	val i = if(a>0) 1 else if(a<0) 2
	println(i)
--------
1 to 10 代表 [1,10]
1 until 10 代表 [1,10)
val a  = 1 to 10
--------
val arr = Array(1,2,3,4)
----
for循环
for(a<-arr) {println(a)}
//可以遍历数组
for(i<- 0 to arr.length -1 ){
	println(i,arr(i))
	}
for(i<- 0 until arr.length){
	println(i,arr(i))
	}
----
循环结果*10构建一个新的集合
val arr2 = for(i<- 0 until arr.length) yield arr(i)*10
---
双重for循环
val a = Array(1,2,3,4)
val b = Array(1,2,3,4)
for (i<-0 until a.length;j<-0 until b.length if i==j) println(a(i),b(j))
---
val a +=1
val a -=1
但是没有a++,a--
-----
九九乘法表
for(i<- 1 to 9;j<- 1 to i) {print(i+"*"+j+"="+i*j+"\t");if(i==j) println()}
----
方法转函数
val sum2 = sum _
---
Array是定长的
ArrayBuffer是可变的
相互转换就用toBuffer和toArray

猜你喜欢

转载自blog.csdn.net/reasery/article/details/83036967
今日推荐