Komunikuję się z interfejsem API, który odsyła NSDictionary jako odpowiedź z danymi, których potrzebuje moja aplikacja (dane są w zasadzie plikiem danych). Te dane są sortowane według najnowszych lub najstarszych, z najnowszymi elementami z przodu NSDictionary.Dzięki szybkiemu wyliczeniu i NSDictionary nie jest gwarantowane iterowanie w kolejności kluczy - jak mogę to zrobić, aby było w porządku?
Kiedy szybko wymieniam je za pomocą for (NSString *key in articles) { ... }
, kolejność jest pozornie losowa, a więc kolejność na nich działa nie jest od najnowszej do najstarszej, tak jak chcę, ale zupełnie losowa zamiast tego.
Przeczytałem, a przy użyciu szybkiego wyliczenia z NSDictionary nie ma gwarancji iteracji w kolejności za pośrednictwem tablicy.
Jednak I potrzebuje do. Jak zrobić iterate przez NSDictionary w kolejności, w której znajduje się NSDictionary?
Napisz własny słownik, a następnie. Jeśli CF/NSDictionary powie, że nie może zagwarantować zamówienia, to nie może zagwarantować zamówienia. Pisanie dobrego algorytmu sortowania może nie być takie trudne, ale jeśli potrzebujesz ich w kolejności wstawiania, może to być trudne, bez oznakowania obiektów. – CodaFi
Czy masz jakieś dane wejściowe na temat interfejsu API? Wygląda na to, że powinien przesłać ci tablicę, a nie słownik. –