在 Scala 中向数组中追加元素

Suraj P 2023年1月30日
  1. 使用 concat() 方法将元素附加到 Scala 中的数组
  2. 使用 ++ 方法将元素附加到 Scala 中的数组
  3. 使用 :+ 方法将元素附加到 Scala 中的数组
在 Scala 中向数组中追加元素

在这篇文章中,我们将研究使用各种方法将元素附加到 Scala 中的数组。

使用 concat() 方法将元素附加到 Scala 中的数组

使用 concat() 函数来组合两个或多个数组。这种方法创建一个新数组而不是更改当前数组。

concat() 的语法:

newArray = concat(array1,array2,array3.....)

concat() 方法中,我们可以传递多个数组作为参数。

例子:

import Array._

object MyClass {

    def main(args: Array[String]):Unit= {

       var arr1 = Array(1, 2, 3, 4)

       //create an array for the elements we want to append
       var arr2 = Array(50, 60, 70, 80)
       var arr3 = concat(arr1,arr2)

        for(elem <- arr3)
        println(elem)
    }
}

输出:

1
2
3
4
50
60
70
80

数组 arr1arr2 被连接起来,并创建一个新的连接数组 arr3。我们可以看到 arr3 只不过是 arr1 末尾的 arr2 元素附加

使用 ++ 方法将元素附加到 Scala 中的数组

除了 concat(),我们还可以使用++ 创建附加数组。

示例代码:

import Array._

object MyClass {

    def main(args: Array[String]):Unit= {

       var arr1 = Array(1, 2, 3, 4)

       var arr3 = arr1 ++ Array(100,200)  //elements we want to append

        for(elem <- arr3)
        println(elem)
    }
}

输出:

1
2
3
4
100
200

我们为要附加的元素创建一个数组并使用++

使用 :+ 方法将元素附加到 Scala 中的数组

:+ 是将元素附加到数组的最佳方法,因为此方法是 in-placeconcat() 方法和 ++ 方法必须共同创建一个新的辅助数组,如果我们想将元素附加到数组。

示例代码:

import Array._

object MyClass {

    def main(args: Array[String]):Unit= {

       var array = Array( 1, 2, 3 )
        array = array :+ 4
        array = array :+ 5

        for (x <- array )
        {
            println( x )
        }
    }
}

输出:

1
2
3
4
5

使用:+,我们可以将元素附加到现有数组,而无需使用辅助数组。

除了:+,我们还可以使用+:prepend,这意味着在数组的开头添加元素。

示例代码:

import Array._

object MyClass {

    def main(args: Array[String]):Unit= {

       var array = Array( 1, 2, 3 )
        array =  40 +: array  //prepending the element
        array =  55 +: array

        for (x <- array )
        {
            println( x )
        }
    }
}

输出:

55
40
1
2
3
作者: Suraj P
Suraj P avatar Suraj P avatar

A technophile and a Big Data developer by passion. Loves developing advance C++ and Java applications in free time works as SME at Chegg where I help students with there doubts and assignments in the field of Computer Science.

LinkedIn GitHub

相关文章 - Scala Array