package test
/* 1.在scala集合中,Iterable是共同的Trait,Iterable要求继承者实现一些共同的方法,例如元素的遍历
* 2。Array是scala基础的数据结构,不从属于scala集合体系
* 3.scala集合分为可变和不可变集合。,不可变集合在scala.collection.immutable里,可变在scala.collection.mutable
*
* 4.List集合是不可变的,head指第一个元素,tail指剩下的元素组成的集合,而LinkedList可变
* 5.使用双冒号::将list集合和其他元素组成新的集合
* 6.当集合中没有元素时,返回Nil
* 7.Set是不可重复的集合
*
*/
object Sacla_Iterable {
def main(args: Array[String]): Unit = {
val range = to val list = List(,,,)
println(list)
println(::list)//使用双冒号::将list集合和其他元素组成新的集合 var linkedList=scala.collection.mutable.LinkedList(,,,,)
while(linkedList!=Nil){//当集合中没有元素时,返回Nil,head指第一个元素,tail指剩下的元素组成的集合
println(linkedList.head)
linkedList=linkedList.tail
}
println(linkedList)
val linkedList2=linkedList.+:()
println("linkedList2: "+linkedList2) val set=Set(,,,)
println("Set: "+set)
var hashSet=scala.collection.mutable.HashSet(,,,)
println("hashSet: "+hashSet)
hashSet+=
hashSet+=
println("hashSet: "+hashSet) var linkedHashSet= scala.collection.mutable.LinkedHashSet(,,,,)
println("linkedHashSet: "+linkedHashSet)
linkedHashSet+=
linkedHashSet+=
println("linkedHashSet: "+linkedHashSet) var sortSet=scala.collection.mutable.SortedSet(,,,,)
println("sortSet: "+sortSet)
sortSet+=
sortSet+=
println("sortSet: "+sortSet) var li=List("hello my princess","this is mine !")
println("li: "+li)
var li_flatMap=li.flatMap( x => x.split(" ") )//flatMap根据函数操作生成新的集合
println("li_flatMap: "+li_flatMap)
var li_flatMap_map=li_flatMap.map(x => (x ,"_kang"))//map对每个集合元素进行操作
println("li_flatMap_map: "+li_flatMap_map)
var li_flatMap_map_map=li_flatMap_map.map(x =>x._2).reduce(_+_)
println("li_flatMap_map_map: "+li_flatMap_map_map) //占位符
List(, , , , , , ).foreach( x => println(x))
List(, , , , , , ).foreach( _ => println _ )
List(, , , , , , ).foreach( println(_))
List(, , , , , , ).foreach( println _ ) }
}

Scala中的数组和集合操作的更多相关文章

  1. scala中的数组的转换操作

    1.共有两种操作 转换成一种新的数组 2.yield转换 3.函数式编程转换

  2. Javascript Jquery 中的数组定义与操作_子木玲_新浪博客

    body{ font-family: "Microsoft YaHei UI","Microsoft YaHei",SimSun,"Segoe UI& ...

  3. C#不允许在foreach循环中改变数组或集合中元素的值(注:成员的值不受影响)

    C#不允许在foreach循环中改变数组或集合中元素的值(注:成员的值不受影响),如以下代码将无法通过编译. foreach (int x in myArray) { x++; //错误代码,因为改变 ...

  4. Java中的数组与集合

    此文转载自:http://student-lp.iteye.com/blog/2082362 在java编程的过程中,我们不能确定某一类型的对象到底会需要多少,为了解决这个问题,java提供了容纳对象 ...

  5. EL表达式对数组、集合操作

    el表达式是通过${key}的方式获取对象中的值.在el表达式中有如下几个隐含的对象,pageScope,requestSope,sessionScope,applicationScope,如果要取$ ...

  6. Programming In Scala笔记-第五章、Scala中的变量类型和操作

    这一章的一些基础性的东西,主要包括Scala中的基本变量类型,以及相关的一些操作符. 一.简单类型 下表中列出Scala语言中的基本类型,以及其字节长度,其中Byte, Short, Int, Lon ...

  7. Shell中的数组及其相关操作

    http://blog.csdn.net/jerry_1126/article/details/52027539 Shell中数据类型不多,比如说字符串,数字类型,数组.数组是其中比较重要的一种,其重 ...

  8. Javascript Jquery 中的数组定义与操作

    1.认识数组 数组就是某类数据的集合,数据类型可以是整型.字符串.甚至是对象Javascript不支持多维数组,但是因为数组里面可以包含对象(数组也是一个对象),所以数组可以通过相互嵌套实现类似多维数 ...

  9. java中的数组与集合相互转换

    1.数组转换成集合 数组转换为集合,用Arrays.asList方法. public static void main(String[] args) { String[] arr = {"a ...

随机推荐

  1. open-falcon之query

    功能 query组件,提供统一的绘图数据查询入口.query组件接收查询请求,根据一致性哈希算法去相应的graph实例查询不同metric的数据,然后汇总拿到的数据,最后统一返回给用户. 配置文件 { ...

  2. Linux 下如何安装 .rpm 文件

    执行以下命令安装: rpm -i your-file-name.rpm 详细的可参考: http://os.51cto.com/art/201001/177866.htm

  3. Ubuntu 12.04 Openstack Essex 安装(单节点)

    这是陈沙克一篇非常好的博文,当时在进行openstack排错的时候,多亏了这篇文章里面有些内容 帮我找到了问题的所在: 原文:http://www.chenshake.com/ubuntu-12-04 ...

  4. 12个常用的JavaScript技巧

    在这篇文章中将给大家分享12个有关于JavaScript的小技巧.这些小技巧可能在你的实际工作中或许能帮助你解决一些问题. 使用!!操作符转换布尔值 有时候我们需要对一个变量查检其是否存在或者检查值是 ...

  5. IIS "rewrite.dll failed to load. The data is the error." 错误解决方法

    在Windows 10 build 17133.73上部署一个较老版本的ASP.NET 2.0程序,访问时候出现: Service Unavailable HTTP Error 503. The se ...

  6. SQLite 3的中文读写

    调用sqlite3_open函数默认创建的数据库encoding=UTF-8,执行sqlite3_exec时需要将对应的字符串转换为UTF-8格式多字节字符串.比如: sqlite3* db; aut ...

  7. mysql5.6.35的安装脚本

    #!/bin/bashfunction help() ( cat << EOF $ [-h] $ -c <CharaterSet> EOF exit ) ----------- ...

  8. 【咸鱼教程】TextureMerger1.6.6 一:Egret MovieClip的制作和使用

    几个月没写代码了.然后突然用到TextureMerger,发现不会用序列图做动画了... 于是写下过程,以防忘记... MovieClip主要是用于游戏中的动画制作和播放.支持swf.gif.序列图等 ...

  9. ElasticSearch 简单入门

    英文原文:Getting Started with ElasticSearch 原文链接:http://www.oschina.net/translate/elasticsearch-getting- ...

  10. 【CF887E】Little Brother 二分+几何

    [CF887E]Little Brother 题意:给你n个圆和一条线段,保证圆和圆.圆和线段所在直线不相交,不相切,不包含.求一个过线段两端点的圆,满足不和任何圆相交(可以相切.包含).问圆的最小半 ...