• 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.

  • 相关阅读:
    移动开发 Native APP、Hybrid APP和Web APP介绍
    urllib与urllib2的学习总结(python2.7.X)
    fiddler及postman讲解
    接口测试基础
    UiAutomator2.0 和1.x 的区别
    adb shell am instrument 命令详解
    GT问题记录
    HDU 2492 Ping pong (树状数组)
    CF 567C Geometric Progression
    CF 545E Paths and Trees
  • 原文地址:https://www.cnblogs.com/seaspring/p/5645195.html
Copyright © 2020-2023  润新知