2014-09-29 12 views
7

Chcę zobaczyć, czy to stwierdzenie jest fałszywe:Przeciwko pozycji "jest" w instrukcji if?

if twData is Array { 
} 

isnt i isnot zdają się nie istnieć.

To nie działa:

if (twData is Array) == false { 
} 

Więc nie jestem pewien dokładnie, jak to zrobić, inne niż mniej czyste:

if twData is Array { 
} else { 
//Code goes here 
} 

Odpowiedz

7

Jeśli znasz typ ogólny zapisany w tablicy, to powinieneś to wyraźnie określić:

if !(twData is Array<Int>) { 
    // Do something 
} 

Jeśli zamiast po prostu chcesz wiedzieć, czy jest to tablica, niezależnie od typu rodzajowego, następnie trzeba użyć NSArray:

if !(twData is NSArray) { 
} 
1

Dokumentacja mówi:

let isarray = twData is Array 
if !isarray { 
    do something 
} 
+1

która produkuje błąd na placu zabaw: „!” 'Nie może powoływać z argumentem typu "Bool" - wiem, to nie ma sensu – Antonio

Powiązane problemy