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. php安装xdebug后var_dump输出没有格式化的问题

    开发环境,装了一个xdebug扩展方便调试代码. 但是环境配置好了之后却发现xdebug加载成功了但是var_dump输出的内容却没有使用html格式化 这时想到估计是php.ini里面的某个输出的配 ...

  2. 【Python学习】记一次开源博客系统Blog_mini源码学习历程-Flask

    今天准备看看Flask框架,找到一套博客系统源码,拿来学习学习 https://github.com/xpleaf/Blog_mini 演示地址 http://140.143.205.19 技术框架 ...

  3. 【大数据系列】节点的退役和服役[datanode,yarn]

    一.datanode添加新节点 1 在dfs.include文件中包含新节点名称,该文件在名称节点的本地目录下 [白名单] [s201:/soft/hadoop/etc/hadoop/dfs.incl ...

  4. LeetCode——Implement Trie (Prefix Tree)

    Description: Implement a trie with insert, search, and startsWith methods. Note:You may assume that ...

  5. PowerDesigner 同名问题解决 Entity Attribute name uniqueness

    选择"Tools -> Model Options"后 "Allow reuse"复选框,建议把这个钩也去掉 Tool->check model.. ...

  6. 认识OpenStack中的flatnetwork

    目录 [隐藏] 1 Understanding FlatNetworking 1.1 FlatNetworking 1.1.1 Single Adapter, All in one setup 1.1 ...

  7. 为gitlab10.x增加使用remote_user HTTP头的方式登录

    项目的结构是这样的: 客户端通过Apache来访问后端的gitlab(gitlab的版本是10.4,手动从源码安装的简体中文版) , Apache作为gitlab的反向代理服务器 Apache内置了C ...

  8. ASP.NET Cookie概念、CURD操作、原理、实际运用

    会话就WEB开发来说,一个会话就是你通过浏览器与服务器之间的一次通话,只不过这种通话是以用浏览器浏览的方式来实现的. 就会话的应用来说,一般会话是用来识别用户的,比如你可以使用会话级变量记录当前用户已 ...

  9. MassTransit

    http://stackoverflow.com/questions/15485317/newbie-is-a-consumer-queue-necessary-in-order-for-publis ...

  10. #if 和 #ifdef 条件编译注意

    之前写程序很少用到这两个条件编译,只是在头文件的开头使用过 #ifdef ....<CODE>....  #endif,他是防止头文件被重复包含,导致的变量被多处声明或定义. 最近写程序发 ...