Search code examples
arraysswift

Add an element to an array in Swift


Suppose I have an array, for example:

var myArray = ["Steve", "Bill", "Linus", "Bret"]

And later I want to push/append an element to the end of said array, to get:

["Steve", "Bill", "Linus", "Bret", "Tim"]

What method should I use?

And what about the case where I want to add an element to the front of the array? Is there a constant time unshift?


Solution

  • As of Swift 3 / 4 / 5, this is done as follows.

    To add a new element to the end of an Array.

    anArray.append("This String")
    

    To append a different Array to the end of your Array.

    anArray += ["Moar", "Strings"]
    anArray.append(contentsOf: ["Moar", "Strings"])
    

    To insert a new element into your Array.

    anArray.insert("This String", at: 0)
    

    To insert the contents of a different Array into your Array.

    anArray.insert(contentsOf: ["Moar", "Strings"], at: 0)
    

    More information can be found in the "Collection Types" chapter of "The Swift Programming Language", starting on page 110.