Swift 사전이 있습니다. 내 키의 가치를 얻고 싶습니다. 주요 방법에 대한 개체가 작동하지 않습니다. 사전의 키 값을 어떻게 얻습니까?
이것은 내 사전입니다.
var companies = ["AAPL" : "Apple Inc", "GOOG" : "Google Inc", "AMZN" : "Amazon.com, Inc", "FB" : "Facebook Inc"]
for name in companies.keys {
print(companies.objectForKey("AAPL"))
}
답변
첨자를 사용하여 사전 키 값에 액세스합니다. 그러면 옵션이 반환됩니다.
let apple: String? = companies["AAPL"]
또는
if let apple = companies["AAPL"] {
// ...
}
모든 키와 값을 열거 할 수도 있습니다.
var companies = ["AAPL" : "Apple Inc", "GOOG" : "Google Inc", "AMZN" : "Amazon.com, Inc", "FB" : "Facebook Inc"]
for (key, value) in companies {
print("\(key) -> \(value)")
}
또는 모든 값을 열거하십시오.
for value in Array(companies.values) {
print("\(value)")
}
답변
Apple Docs에서
아래 첨자 구문을 사용하여 특정 키에 대한 사전에서 값을 검색 할 수 있습니다. 값이없는 키를 요청할 수 있기 때문에 사전의 아래 첨자는 사전 값 유형의 선택적 값을 반환합니다. 사전에 요청 된 키에 대한 값이 포함 된 경우 아래 첨자는 해당 키의 기존 값을 포함하는 선택적 값을 반환합니다. 그렇지 않으면 아래 첨자가 nil을 반환합니다.
if let airportName = airports["DUB"] {
print("The name of the airport is \(airportName).")
} else {
print("That airport is not in the airports dictionary.")
}
// prints "The name of the airport is Dublin Airport."