"Leere Sammlung wörtliche erfordert eine explizite type" - Fehler auf Swift3

Habe ich eine variable in meiner Klasse:

var list = []

und ich benutze es auf eine Funktion von meiner Klasse:

func chargeData (data: NSArray){
    list = data
}

Es funktionierte gut auf meine Projekt in Swift 2.3 aber wenn ich aktualisiert, es XCode8 und Swift3 es gibt mir die folgende Fehlermeldung:

Leere Sammlung wörtliche erfordert eine explizite Typ

so, ich habe eine Typumwandlung zu meiner Liste variable:

var list = [] as! NSArray

aber es gibt mir die folgende Warnung:

Gezwungen cast von 'NSArray' auf gleiche Art hat keine Wirkung

Ich weiß, dass eine Ausschreibung nicht brach der Anwendung, aber ich möchte, um dieses Problem zu lösen Fehler in einem richtigen Weg.

Hat jemand den gleichen Fehler und es gelöst richtig?

Vielen Dank im Voraus!

  • Sie würden zu tun haben var list:NSArray = []. Es ist ok, wenn man einfach ersetzen Sie es mit einem anderen. Aber es ist nicht wandelbar ist, sich selbst, so var list:NSMutableArray = [] wäre besser nehme ich an.
  • Was meinst du das wirklich mit der Tatsache, dass nicht veränderlich selbst? Ich weiß, dass veränderlich bedeutet, dass er dessen Werte ändern, aber ich bin nicht wirklich sicher, was meinst du mit "verändert sich".
  • CodeDifferent, erklärt Sie in Ihrer Antwort. var/lassen und NSArray/NSMutableArray.
Schreibe einen Kommentar