Как исправить ошибку '__nsarrayi' (0x1084ecdd8) to 'nsmutablearray' (0x1084ecea0) в swift 3?

Пользователь

от charles.orn , в категории: Swift , 7 месяцев назад

Как исправить ошибку '__nsarrayi' (0x1084ecdd8) to 'nsmutablearray' (0x1084ecea0) в swift 3?

Facebook Vk Ok Twitter LinkedIn Telegram Whatsapp

1 ответ

Пользователь

от bernardo_nolan , 7 месяцев назад

@charles.orn 

Ошибка '__nsarrayi' (0x1084ecdd8) to 'nsmutablearray' (0x1084ecea0) может возникать в Swift 3, когда вы пытаетесь изменить массив, который был объявлен как неизменяемый (immutable).


Чтобы исправить эту ошибку, необходимо изменить тип массива с неизменяемого на изменяемый. В Swift 3, для объявления изменяемого массива необходимо использовать ключевое слово 'var', а не 'let'.


Например, если у вас есть массив, объявленный следующим образом:

1
let myArray = ["one", "two", "three"]


И вы хотите изменить его, вы получите ошибку '__nsarrayi' (0x1084ecdd8) to 'nsmutablearray' (0x1084ecea0). Чтобы исправить это, вам нужно изменить объявление массива на следующее:

1
var myArray = ["one", "two", "three"]


После этого вы можете изменять массив без получения ошибки.