Search code examples
iosarraysswift

iOS Swift remove elements of an array from another array


I have two arrays

var array1 = new Array ["a", "b", "c", "d", "e"]
var array2 = new Array ["a", "c", "d"]

I want to remove elements of array2 from array1

Result ["b", "e"]

Solution

  • The easiest way is to convert both arrays to sets, subtract the second from the first, convert to the result to an array and assign it back to array1:

    array1 = Array(Set(array1).subtracting(array2))
    

    Note that your code is not valid Swift - you can use type inference to declare and initialize both arrays as follows:

    var array1 = ["a", "b", "c", "d", "e"]
    var array2 = ["a", "c", "d"]