이름 구조를 만듭니다. 이름은 성 (성 또는 성)과 성 (성 또는 성)의 두 부분으로 이루어져 있습니다 (이름은 이라고도 함). 이름 구조는 이 Comparable 프로토콜을 구현해야합니다.스위프트 3 비교 프로토콜
나는 다음과 같은 코드로 시도하고 있었다하지만 난 비교하여 givenName과, personalName, familyName 및 성을 포함하는 방법을 모른다 기본 처음 lastName
을 기준으로 정렬하는 것입니다 미국에서는
struct Name : Comparable {
let firstName : String
let lastName: String
init(firstName : String, lastName:String) {
self.firstName = firstName
self.lastName=lastName
}
}func < (lhs: Name, rhs: Name) -> Bool {
return lhs.firstName < rhs.firstName && lhs.lastName < rhs.lastName
}func == (lhs: Name, rhs: Name) -> Bool {
return lhs.firstName == rhs.firstName && lhs.lastName == rhs.lastName
}
let firstName = Name(firstName: "Paul", lastName: "Smith")
let givenName = Name(firstName: "Paul" , lastName: "Smithe")
let personalName = Name(firstName: "Paul", lastName: "Smith")
print (firstName == givenName)
당신은 당신의 질문을 바꿔 이미 당신이 무엇을 제공 할 수 있습니다 시도했다. – Zico