第三章:数组

作者: Frank_8942 | 来源:发表于2018-04-15 21:21 被阅读30次

    在jvm中,scala的Array以java数组方式实现; Int, Double 或其他与java中基本类型对应的数组都是基本类型数组; 例如: Array(1,2,3) 在jvm中就是 int[] ;

    =>在scala中, 数组分为定长数组 Array和变成数组 ArrayBuffer ;

    变长数组

    scala中的 ArrayBuffer 的数据结构等效与 java中的 ArrayList;

    val  arr = ArrayBuffer[Int]()

    =>需要导包   import  scala.collection.mutable.ArrayBuffer

    =>可变数组和定长数组相互转化: toArray   与    toBuffer

    for ( element <- arr ){ }

    =>数组遍历有两种方式: 一种是基于下标进行遍历, 一种就类型java中的高级for循环;

    =>对于数组来说,进行数据的移动是很消耗性能的,比如从一个整数的数组缓冲移除所有的负数,最好的方式就是采用 yield方式遍历 或者 使用filter/map 的方式, 就是生成新数组的方式, 要高效很多;

    相关文章

      网友评论

        本文标题:第三章:数组

        本文链接:https://www.haomeiwen.com/subject/pnxmhftx.html