2014-09-29 3 views
7

Я хочу, чтобы увидеть, если это утверждение неверно: кажется, не существуетВ противоположность выражению «is» in if if?

if twData is Array { 
} 

isnt и isnot.

Это не работает:

if (twData is Array) == false { 
} 

Так что я не знаю точно, как это сделать, кроме менее чистый:

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

ответ

7

Если вы знаете общий тип, хранящийся в массиве, то вы должны сделать его явным:

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

Если вместо этого вы просто хотите знать, если это массив, независимо от общего типа, то вы должны использовать NSArray:

if !(twData is NSArray) { 
} 
1

Документация говорит:

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

Это приводит к ошибке в детской площадке: «!» 'Не может вызывать с аргументом типа «Bool'' - я знаю, это не имеет смысла – Antonio