Как использовать Generics для работы со словарями и массивами - PullRequest
0 голосов
/ 02 мая 2019

Я новичок в использовании дженериков, но в соответствии с моим требованием мне нужно его использовать.

У меня есть 10 apis, в которых

  • 4 возвращает массивпользовательские объекты (например, данные нескольких объектов Person ([Person]))

  • 4 возвращает простой объект (например, данные объекта Company (Company))

  • два возвращаемых простых словаря

поэтому я пытаюсь создать общий класс ответа

class Response<T>: NSObject {
    @objc var responseData = T
}

Но в этой строке выдается ошибка.

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

1 Ответ

4 голосов
/ 02 мая 2019

Прежде всего, дженерики не могут быть представлены в объекте.поэтому вам нужно использовать только Swift

class Response<T> {
    var responseData: T!
}

, который вы можете использовать затем T следующим образом:

let response = Response<[String]>()

так что response.responseData будет массивом String

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...