Sort Array of Custom Objects in Swift

With this Swift code example, I would like to share with you how to sort an array of custom objects in Ascending and Descending order.

  • Create a custom Swift class with the name “Friend”,
  • Create an Array that can hold custom objects of type Friend,
  • Sort Array of custom objects in Ascending and Descending order,
  • Iterate through an array of custom objects and print object properties.

Here is a short Swift code example that demonstrates how to implement a custom class in Swift with two properties: name and age.

Create Custom Class in Swift

  class Friend {
    let name : String
    let age : Int
    init(name : String, age: Int) { = name
        self.age = age

Sort Array of Custom Objects Code Example in Swift

var friends:[Friend] = []

let friend1 = Friend(name: "Sergey", age: 30)
let friend2 = Friend(name: "Bill", age: 35)
let friend3 = Friend(name: "Michael", age: 21)


printFriends(friends: friends)

// Get sorted array in descending order (largest to the smallest number)
let sortedFriends = friends.sorted(by: { $0.age > $1.age })
printFriends(friends: sortedFriends)

// Get sorted array in ascending order (smallest to the largest number)
let sortedFriendsAscendingOrder = friends.sorted(by: { $0.age < $1.age })
printFriends(friends: sortedFriendsAscendingOrder)

Iterate Through Array of Custom Objects in Swift

func printFriends(friends: [Friend])
    for friendEntry in friends {
        print("Name: \(, age: \(friendEntry.age)")

For more Swift code examples and tutorials, please check the Swift Code Examples page on this website.

Leave a Reply

Your email address will not be published. Required fields are marked *