Because the comparison function “==“ has the signature: func ==<T : Equatable>(lhs: T?, rhs: T?) -> Bool
An optional parameter accepts non-optionals. In a sense non-optionals are “promoted” to optionals when used for an optional parameter. Rien. > On 18 Oct 2016, at 10:58, Седых Александр via swift-users > <swift-users@swift.org> wrote: > > This code work: > > let one: Int? = 5 > let two = 5 > let result = one == two > > print(result) > > //print true > > Why we can access to Optional value without unwrap within comparison > operations? > > -- > Седых Александр > _______________________________________________ > swift-users mailing list > swift-users@swift.org > https://lists.swift.org/mailman/listinfo/swift-users _______________________________________________ swift-users mailing list swift-users@swift.org https://lists.swift.org/mailman/listinfo/swift-users