SORU
17 EYLÜL 2009, PERŞEMBE


ıPhone - benzersiz değerleri elde NSArray nesneden

NSArray bir özel bir sınıf nesneleri ile oluşturdum. Sınıf 3 (şehir, Eyalet, zip) string özellikleri vardır. array Tüm eşsiz devlet değerleri almak istiyorum.

NSPredicate sınıfı okuma ile yaptım ama bu durumda kullanmak için ne kadar gelemedi. Bulabildiğim tek örnek dize operasyon yapıldı.

Biri bana yardım edebilir misiniz?

CEVAP
17 EYLÜL 2009, PERŞEMBE


Tamamen basit bir liner:

NSSet *uniqueStates = [NSSet setWithArray:[myArrayOfCustomObjects valueForKey:@"state"]];

Hile NSArray valueForKey: yöntemdir. Bu dizi sayesinde (myArrayOfCustomObjects) yineleme, her nesne üzerinde -state yöntemi ve sonuçları bir dizi inşa edecek. Biz o devletlerin ortaya çıkan dizi NSSet çiftleri kaldırmak için oluşturun.


İOS 5 ile başlayan ve X 10.7, OS bu da yeni bir sınıf: NSOrderedSet. Sıralı bir dizi avantajı herhangi çiftleri kaldırmak, ama aynı zamanda göreli düzeni korumak olacaktır.

NSArray *states = [myArrayOfCustomObjects valueForKey:@"state"];
NSOrderedSet *orderedSet = [NSOrderedSet orderedSetWithArray:states];
NSSet *uniqueStates = [orderedSet set];

Bunu Paylaş:
  • Google+
  • E-Posta
Etiketler:

YORUMLAR

SPONSOR VİDEO

Rastgele Yazarlar

  • bunliu

    bunliu

    2 Mayıs 2007
  • SavageLuxxxGaming - Daily NBA 2K15 & NBA Live 15 Enjoy And Subscribe!

    SavageLuxxxG

    11 Ocak 2013
  • ThePointblank

    ThePointblan

    18 Aralık 2006