Массив (класс), заполненный ненулевыми значениями, остается пустым

#ios #arrays #swift

#массивы #swift #null

Вопрос:

В настоящее время у меня возникают проблемы с заполнением массива CustomClass.

Я пытаюсь заполнить его файлом JSON. Во время моего синтаксического анализа json (с использованием SwiftyJSON) я выполняю цикл и заполняю свой массив. Проблема в том, что в конце моего цикла он все еще пуст. Я тестировал его по-разному, и вот мой код:

введите описание изображения здесь

Это файл, в котором проблема. В моем цикле я заполняю аннотацию, которую я добавляю с помощью append в свой массив. Проблема в том, что возвращает моя печать. Вот его часть:

введите описание изображения здесь

Это всего лишь небольшая часть огромного файла json. И, мой tmpAnnot.name корректно печатается на каждой итерации. Но когда дело доходит до моего массива, ничего.

Итак, я полностью потерян и надеюсь, что вы могли бы мне помочь ^^

(И для информации, вот мой пользовательский класс) :

введите описание изображения здесь

И, кстати, я попытался распечатать свой array.count, и он тоже равен нулю

Мне очень жаль, если вопрос был опубликован. Я не смог найти его на всем веб-сайте.

Комментарии:

1. Вы должны опубликовать код, а не скриншот.

2. что хорошего в опциях, если люди просто помещают их повсюду и используют ? везде. Приложение не вылетит, но вы не найдете своих ошибок.

3. Извините, Хундрагпан, у меня уже были скриншоты, и я немного спешил. ^^ И проблема с моим необязательным и моим использованием ?, заключается в том, что он не будет компилироваться, если я его не помещу

Ответ №1:

Измените ваше JSONAnnotationList объявление на необязательное и присвоите ему пустой массив

 var JSONAnnotationList: [UGOAnnotation] = []
  

Видите ли, вы никогда не создавали массив, поэтому печатать было нечего.

Весь смысл опций в том, чтобы использовать их экономно, а не везде.

Комментарии:

1. Спасибо. Вы только что спасли мой день, это была проблема. Я не совсем понимаю, почему, но я проверю это:D Вы настоящий mvp.