В Objective-C эквивалент List<Products> cartProduct = new ArrayList();
. Я использовал NSMutableArray, но это отличается от Java ArrayList.Эквивалент Java ArrayList в Objective-C
ответ
Мне кажется, что Java ArrayLists
использовать дженерики.
Объектив-C не имеет истинной поддержки дженериков. (Swift does. Вы можете использовать Swift вместо этого.)
Классы сбора Objective-C (NSArray
и NSMutableArray
) являются гетерогенными. Они могут содержать смесь объектов разных типов. Однако последнее дополнение к языку добавляет очень тонкий слой общей поддержки.
Вы хотите использовать синтаксис, как это:
NSMutableArray <Products *> *cartProduct;
Этот синтаксис только добавляет во время компиляции проверки типов. Он сообщает компилятору, что cartProduct
является изменяемым массивом, который должен содержать только объекты типа Products
, поэтому вы получаете предупреждения, когда вы добавляете/извлекаете объекты из массива других типов, но в процессе выполнения массив все равно будет принимать объекты любого типа.
Я нашел this link, объясняя больше о «легкой» поддержке Objective-C для дженериков. Это кажется довольно ясным и хорошо написанным.
Как это отличается? Что вы пытаетесь сделать, что 'NSMutableArray' не может? – Arc676
Я хочу сделать сборку с NSMUtableArray, как это возможно. – Sandeep
'NSMutableArray arr = [NSMutableArray array];' then '[arr addObject: thing];' Это не то, что вы ищете? – Arc676