Programming-Idioms

This language bar is your friend. Select your favorite languages!

Idiom #166 Concatenate two lists

Create list ab containing all the elements of list a, followed by all elements of list b.

val ab = a ++ b
(def ab (concat a b))
auto ab = a;
ab.insert (ab.end (), b.begin (), b.end ());
System.Linq
var list1 = new List<int>(){1,2,3};
var list2 = new List<int>(){4,5,6};

var list3 = list1.Concat(list2);
int[] a, b;
auto ab = a ~ b;
std.range;
int[] a, b;
auto ab = chain(a, b);
var a = [1,2,3];
var b = [3,2,4];
var ab = a + b;
ab = a ++ b
AB = A ++ B.
real, dimension(:), allocatable :: ab

ab = [a, b]
var ab []T
ab = append(append(ab, a...), b...)
ab := append(a, b...)
ab := make([]T, len(a)+len(b))
copy(ab, a)
copy(ab[len(a):], b)
ab = a ++ b
var ab = a.concat(b);
var ab = new ArrayList<>(a);
ab.addAll(b);
(setf ab (append a b))
$ab = array_merge($a, $b);
classes
var
  a,b,ab: TList;

...
  ab := TList.Create;
  ab.Assign(a);
  ab.AddList(b);
...
@ab = (@a, @b)
ab = a + b
ab = a + b
let ab = [a, b].concat();
(define ab (append a b))

Do you know the best way to do this in your language ?
New implementation...

Idiom created by

programming-idioms.org