顿搜
飞过闲红千叶,夕岸在哪
类目归类
默认升序,可以使用 reverse 进行逆反
val arr = Array(1,3,5,2,7,1,8,3)
arr.sorted
arr.sorted.reversearr.sortWith( _ > _) // 降序
arr.sortWith( _ < _) // 升序
arr.sortWith( (x,y) => x < y)val arr = scala.collection.mutable.ArrayBuffer( 1,6,2,5,9,23,43,12)
arr.sortBy( x => x.toString )
arr.sortBy( x => x) // 升序排
arr.sortBy( x => -x) // 降序排val list = List(1,3,2,5,4,6,3,8,7,2,4)
list.grouped(3) // 将链表每三个分成一组 形成List( List(1,3,2), List(5,4,6), List(3,8,7), List(2,4) )汇总,根据传入的函数,对集合中的数据进行汇总操作
val list = List(2,4,7,1,8,2)
list.reduce(<em>+</em>) // 对集合里面的数据求和
list.reduceLeft(<em>+</em>) // 对集合里面的数据,从左至右依次求和
list.reduceRight(<em>+</em>) // 对集合里面的数据,从右至左依次求和和reduce类似,不过在汇总的过程中,可以传入一个初始值
val list = List(2,4,7,1,8,2)
list.fold(10)(<em>+</em>) // 对集合里面的数据求和
list.reduceLeft(10)(<em>+</em>) // 对集合里面的数据,从左至右依次求和。sum函数实质是调用的foldLeft
list.reduceRight(10)(<em>+</em>) // 对集合里面的数据,从右至左依次求和List( List(1,3,2), List(5,4,6), List(3,8,7), List(2,4) )
arr.aggregate(10)((x,y) => x + y.sum, (m,n) => m + n) // 10 会首先赋给x,整个过程中,10被加了一次
arr.aggregate(10)(<em>+</em>.sum, <em>+</em>)求并集
var l1 = List(2,4,6,8)
var l2 = List(1,3,6,8,9)
l1 union l2
l1.union(l2)求交集
var l1 = List(2,4,6,8)
var l2 = List(1,3,6,8,9)
l1 intersect l2
l1.intersect(l2)求差集
var l1 = List(2,4,6,8)
var l2 = List(1,3,6,8,9)
l1 diff l2
l1.diff(l2)