2016-12-10 4 views
0
var airports : [String:String] = ["DXB" : "dubai international airport", "LHR" : "heathrow international airport"] 

for (airportCode,airportName) in airports 
{ 
airportName = airportName.capitalized 
} 

so muss ich alle Werte zum Beispiel profitieren aber ich habe den FehlerWie Werte in Wörterbücher in Swift bearbeiten

„auf den Wert nicht zuweisen: airport eine Konstante ist, lassen

Antwort

0

Index-Variablen sind Konstanten per Definition. Sie tun können

var airports = ["DXB" : "dubai international airport", "LHR" : "heathrow international airport"] 
for (airportCode, airportName) in airports 
{ 
    airports[airportCode] = airportName.capitalized 
} 
0

Dies ist nicht die beste Lösung sein kann , Aber es funktioniert und ist einfach:

let keys = airports.keys 
for key in keys { 
    airports[key] = airports[key]!.capitalized 
} 

Sie zuerst alle Schlüssel im Wörterbuch erhalten und für jede Taste, stellen Sie den entsprechenden Wert.

1

Fügen Sie einfach var in Ihrer for-Schleife

var airports : [String:String] = ["DXB" : "dubai international airport", "LHR" : "heathrow international airport"] 

for (var airportCode,var airportName) in airports 
{ 
airportName = airportName.capitalized 
airports[airportCode] = airportName 
} 
+1

OK, aber jetzt 'var' ist eigentlich nicht notwendig. – vadian

+0

Ja. Dies kann einfach durch "airportsCode" = airportName.capitalized "erfolgen –

Verwandte Themen