複数の配列(リスト)を連結するには 2021/01/29
関連
Scala 2021/01/29
Seq
の ++
や :++
や ++:
というメソッドを使う。または List
であれば :::
というメソッドも使える。
def Seq[A]#++[B >: A](suffix: IterableOnce[B]): Seq[B]
def Seq[A]#:++[B >: A](suffix: IterableOnce[B]): Seq[B]
def Seq[A]#++:[B >: A](prefix: IterableOnce[B]): Seq[B]
def List[A]#:::[B >: A](prefix: List[B]): List[B]
例
val lst1 = List(1, 2, 3);
val lst2 = List(4, 5, 6);
val result = lst1 ::: lst2;
print(result); // => List(1, 2, 3, 4, 5, 6)
PHP 2016/04/14
複数の配列を連結するにはarray_merge
関数を使う。この関数は引数の配列を変更せずに連結した結果を返すのみである。
$a1 = array(1, 2, 3);
$a2 = array(4, 5, 6);
$result = array_merge($a1, $a2);
var_export($a1); echo "\n";
// =>
// array (
// 0 => 1,
// 1 => 2,
// 2 => 3,
// )
var_export($a2); echo "\n";
// =>
// array (
// 0 => 4,
// 1 => 5,
// 2 => 6,
// )
var_export($result); echo "\n";
// =>
// array (
// 0 => 1,
// 1 => 2,
// 2 => 3,
// 3 => 4,
// 4 => 5,
// 5 => 6,
// )
配列のキーが数字以外の場合は、それぞれの配列のキーを変更せずに上書きでマージしていくので、要素が追加されるとは限らない。
-> 連想配列をマージ
3つ以上の配列を連結したい場合も、array_merge
に渡す引数にそれらの配列を並べるだけでよい。
$result = array_merge($a1, $a2, $a3);
Ruby 2015/01/06
配列を+
演算子でつなぐと連結できる。
p ["abc", "def"] + ["123", "456"] # => ["abc", "def", "123", "456"]
JavaScript 2015/10/18
Array.prototype.concat
は配列を連結した新しい配列を生成して返す。この関数は this
も引数に渡した配列も変更しない。
var newArr = arr1.concat(arr2, arr3);
引数がない場合は結果として arr1
と同じ内容の新しい配列を生成するだけなので、配列のコピーの目的でも使える。