Сортировка NSArray на основе других массивов с пользовательскими классами
Мне отчаянно нужно отсортировать массив: вот ситуация,
Мне нужно переставить / отсортировать и заменить массивы на основе другого класса объекта из другого массива.
ParentClass :NSObject{
NSString *name;
NSNumber *type;
}
Это родительский класс, который заполняет parentArray
parentArray = { parentA, parentB, parentC }
Это еще один объектный класс, у него есть ParentClass * parent.
@class ParentClass;
EntryClass: NSObject{
NSString *name;
NSNumber *number;
ParentClass *parent;
}
Now I have an array entryArray = { entryX, entryY, entryZ };
entryX.parent is one of the ParentClasses and all of them are in parentArray.
entryX.parent == ParentC;
entryY.parent == ParentA;
entryZ.parent == ParentB;
Я хочу отсортировать этот entryArray, в соответствии с последовательностью в parentArray. Так что если ParentArray это:
{
ParentA,
ParentB,
ParentC
}
тогда я бы хотел, чтобы отсортированный entryArray был
{
entryY,
entryZ,
entryX
}
Кроме того, если отсутствует одна запись Object, entryZ, то массив должен быть
{
entryY,
@"0.0",
entryX
}
Если вы попробовали несколько способов, но ни один из них не сработал, любая помощь приветствуется.
Спасибо
ОБНОВЛЕНИЕ: БОЛЬШЕ ЯСНОСТИ: предположим, что parentArray находится в этой последовательности
{parentA, parentB}
и входной массив находится в
{entryX, entryY}
Хочу переставить entryArray и если
entryY.parent == parentA и entryX.parent == parentB
затем, основываясь на их положениях в parentArray, где parentA будет первым, я бы хотел, чтобы entryY была до entryX.result = {entryY, entryX}.