Swift version: 5.10
Hash values are an invaluable way of identifying data uniquely, and any type that conforms to the Hashable
protocol can be used to create all or part of a hash value by using the Hasher
struct.
To use this, create an instance of Hasher
, provide it with whatever objects you want to hash, then call finalize()
to generate the final value as an integer. For example:
struct iPad: Hashable {
var serialNumber: String
var capacity: Int
}
let first = iPad(serialNumber: "12345", capacity: 128)
let second = iPad(serialNumber: "abcde", capacity: 512)
var hasher = Hasher()
hasher.combine(first)
hasher.combine(second)
let hash = hasher.finalize()
GO FURTHER, FASTER Unleash your full potential as a Swift developer with the all-new Swift Career Accelerator: the most comprehensive, career-transforming learning resource ever created for iOS development. Whether you’re just starting out, looking to land your first job, or aiming to become a lead developer, this program offers everything you need to level up – from mastering Swift’s latest features to conquering interview questions and building robust portfolios.
Available from iOS 8.0
This is part of the Swift Knowledge Base, a free, searchable collection of solutions for common iOS questions.
Link copied to your pasteboard.