zoukankan      html  css  js  c++  java
  • How to merge Scala Lists

    Scala List FAQ: How do I merge a List in Scala?

    NOTE: I wrote the solutions shown below a long time ago, and they are not optimal. I'll update this article when I have more time. The best approach is to prepend one List to the beginning of another List with the :: method.

    There are at least three ways to merge/concatenate Scala List instances, as shown in the examples below.

    1) The Scala List ::: method

    First, you can merge two Scala lists using the ::: method of the List class, as demonstrated here at the Scala command prompt:

    scala> val a = List(1,2,3)
    a: List[Int] = List(1, 2, 3)
    
    scala> val b = List(4,5,6)
    b: List[Int] = List(4, 5, 6)
    
    scala> val c = a ::: b
    c: List[Int] = List(1, 2, 3, 4, 5, 6)
    

    This operation is said to have O(n) speed, where n is the number of elements in the first List.

    2) The Scala List concat method

    You can also merge two Scala lists using the List class concat method:

    scala> val a = List(1,2,3)
    a: List[Int] = List(1, 2, 3)
    
    scala> val b = List(4,5,6)
    b: List[Int] = List(4, 5, 6)
    
    scala> val c = List.concat(a, b)
    c: List[Int] = List(1, 2, 3, 4, 5, 6)
    

    3) The Scala List ++ method

    You can also use the List ++ method to concatenate Scala Lists, as shown here:

    scala> val a = List(1,2,3)
    a: List[Int] = List(1, 2, 3)
    
    scala> val b = List(4,5,6)
    b: List[Int] = List(4, 5, 6)
    
    scala> val c = a ++ b
    c: List[Int] = List(1, 2, 3, 4, 5, 6)
    

    I'll try to add more information on these three approaches as I learn about them, but for now, I just wanted to share these three approaches.

  • 相关阅读:
    oracle EXP导出一张表时使用query参数指定where条件
    Centos7-安装Apache2.4+PHP5.6
    VMWare 14 Workstation Pro 下载与安装
    Mysql的视图、存储过程、函数、索引全解析
    Eclipse Java注释模板设置详解
    Tomcat 80端口 配置及域名访问步骤
    LeetCode——merge-k-sorted-lists
    LeetCode——rotate-list
    LeetCode——jump-game-ii
    LeetCode——jump-game
  • 原文地址:https://www.cnblogs.com/seaspring/p/5645195.html
Copyright © 2011-2022 走看看