Scala初体验之:List

先看看java中的Array和List

java中的数组定义的时候,不会出现Array这个词,它是一个定长的对象组合,并且按照给定的顺序排列,数组中的元素的值可以任意修改为相同类型的值。

List在java中给人的感觉就是可变长的数组,其它的与其子类型相关。


scala中的Array和List

scala中的Array是一个关键字,访问元素的形式为str(0),其它的几乎没有什么分别。

scala中的List和java中的List有很大的不同。

scala中的List是具有相同类型元素的不可变对象序列。

scala.List   <-->  java.util.List

val list = List(1,2,3)
val list = List[Int](1,2,3)

List操作符:

:: 发音为cons,把一个新元素组合到已有List的最前端,然后返回结果List。

::是一个右操作数的方法,4::list返回一个新的结果,list还是原来的List(1,2,3)

方法名以冒号结尾的话,这个方法名就是右操作数的方法。

list.::(5)是行得通的,但是5::list确实更优美一些~

 

::: 会把两个List叠加到一起,举例说明:

val list1 = List(1,2,3)

val list2 = List(2,5)

list1:::list2 会返回一个List(1,2,3,2,5)


创建一个List的另一种方式为:val list=1::2::3::Nil

Nil是一个空类


方法:

thrill.count(s => s.length == 4)  // count的函数文本决定了满足条件的数量 : count(p: (A) ⇒ Boolean): Int

thrill.drop(2)  // 去掉List的前两个元素,返回剩余的元素List

thrill.dropRight(2)  //去掉List的后两个元素,返回剩余的元素List

thrill.exists(s => s == "until")  //exists的函数文本决定了是否存在满足条件的元素 : exists(p: (A) ⇒ Boolean): Boolean

thrill.filter(s => s.length == 4)  //filter的函数文本为过滤条件,满足条件的元素依次组成List : filter(p: (A) ⇒ Boolean): List[A]

thrill.forall(s => s.endsWith("1"))  //forall对所有的元素进行一个boolean判断!仅仅是判断 :forall(p: (A) ⇒ Boolean): Boolean

thrill.foreach(s => print(s))  //foreach对每一个!返回类型为Unit。 : foreach(f: (A) ⇒ Unit): Unit

thrill.head  // 返回List的第一个元素

thrill.init  // 返回除了最后一个之外的其他元素List

thrill.isEmpty  // List是否为空

thrill.last  // List的最后一个元素

thrill.length  // List中元素的个数

thrill.map(s => s + "y")  // map[B](f: (A) ⇒ B): List[B]

thrill.mkString(", ")  // 返回元素组成的String

thrill.reverse   // 逆序元素的列表

thrill.tail   // 返回除掉第一个元素的thrill列表

thrill.sort((s, t) => s.charAt(0).toLowerCase < t.charAt(0).toLowerCase)

thrill.remove(s => s.length == 4)  // 除去满足条件的元素,

转载于:https://www.cnblogs.com/voctrals/archive/2013/05/14/3078170.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值