2015-12-24 2 views
0

У меня есть два многомерных NSMutableArray s. Каждый из них имеет четыре NSMutableArray s в главном NSMutableArray. Я хочу обменять данные одного местоположения в 1-м массиве с данными из второго, и я боюсь синтаксиса для replaceObjectatIndex: withObject:. Вот моя строка кода:Нет видимого интерфейса для NSMutableArray объявляет селектор replaceObjectAtIndex:

[newStock replaceObjectAtIndex:0 objectAtIndex:0 withObject: [[oldStock objectAtIndex: 0] objectAtIndex: 0]]; 

Я пытаюсь поместить данные из oldStock массива в newStock массив, и я не получаю сообщение об ошибке: «Нет видимых @interface для„NSMutableArray“Объявляет selector 'replaceObjectAtIndex:' ". Я сделал это с помощью не многомерных массивов, поэтому считаю, что селектор действителен.

+0

есть tooooo много индексов! Это ваш фактический код в вашем приложении? – luk2302

+0

Да, это право от моей программы. Я не могу получить правильное использование или структуру для линии. – Keith

+1

ну, во-первых, удалите первый 'objectAtIndex: 0' он совершенно неуместен там – luk2302

ответ

2

старый синтаксис в Objective-C выглядит следующим образом:

[[newStock objectAtIndex:0] replaceObjectAtIndex:0 withObject: [[oldStock objectAtIndex: 0] objectAtIndex: 0]]; 

К счастью, вы можете использовать новый синтаксис Сейчас:

newStock[0][0] = oldStock[0][0]; 
+0

хвалите литералы. – luk2302

+0

Работал отлично, и мне очень нравится новый синтаксис! Спасибо – Keith

+1

@Keith «новый» уже не такой уж новый, уже здесь уже довольно давно. – luk2302

Смежные вопросы