Sortiranje nizova u dikšionariju
(1 korsinik/a gleda/ju temu) (1) Gost

Sortiranje nizova u dikšionariju


20.01.2011 | 02:26
Čisto kao komentar na raspravu na jednom drugom sajtu - Command line tool, type: Foundation, pa ovo u main.c:
#import <Foundation/Foundation.h>

NSComparisonResult compare (NSString *first, NSString *second, void *context)
{
   return [first compare:second];
}

void proba (void)
{
   NSArray  *automobiliArray = [NSArray arrayWithObjects:@"volvo", @"alfa", nil];
   NSArray  *zivotinjeArray  = [NSArray arrayWithObjects:@"zebra", @"krava", nil];
   
   NSDictionary  *automobiliDict = [NSDictionary dictionaryWithObjectsAndKeys:@"automobili", 
@"sectionName", automobiliArray, @"array", nil];
   NSDictionary  *zivotinjeDict  = [NSDictionary dictionaryWithObjectsAndKeys:@"životinje",
@"sectionName", zivotinjeArray, @"array", nil];
   
   NSMutableArray  *allItems = [NSMutableArray arrayWithObjects:zivotinjeDict, automobiliDict, nil];
   
   NSLog (@"*** UNSORTED ***");
   for (NSDictionary *tmpDict in allItems)  {
      NSLog (@"--- Section: %@ ---", [tmpDict objectForKey:@"sectionName"]);
      NSArray  *tmpArray = [tmpDict objectForKey:@"array"];
      for (int i=0; i<[tmpArray count]; i++)  {
         NSLog (@"Item %d: %@", i, [tmpArray objectAtIndex:i]);
      }
   }
   NSLog (@".");
   NSLog (@"*** SORTED ***");
   NSSortDescriptor  *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"sectionName" ascending:YES];
   
   [allItems sortUsingDescriptors:[NSArray arrayWithObject:sortDescriptor]];

   for (NSDictionary *tmpDict in allItems)  {
      NSLog (@"--- Section: %@ ---", [tmpDict objectForKey:@"sectionName"]);
      NSArray  *tmpArray = [[tmpDict objectForKey:@"array"] sortedArrayUsingFunction:compare context:NULL];
      for (int i=0; i<[tmpArray count]; i++)  {
         NSLog (@"Item %d: %@", i, [tmpArray objectAtIndex:i]);
      }
   }

   [sortDescriptor release];
}

int main (int argc, const char * argv[])
{
   NSAutoreleasePool * pool = [[NSAutoreleasePool alloc] init];
   
   proba ();
   
   [pool drain];
   return (0);
}


Nisam htio komplicirati sa klasama tako da se sortira upotrebom funkcije. To se lako promijeni u nekoj konkretnoj aplikaciji.

Ispis u konzoli izgleda ovako:

*** UNSORTED ***
--- Section: životinje ---
Item 0: zebra
Item 1: krava
--- Section: automobili ---
Item 0: volvo
Item 1: alfa

*** SORTED ***
--- Section: automobili ---
Item 0: alfa
Item 1: volvo
--- Section: životinje ---
Item 0: krava
Item 1: zebra
Moderatori: Bertone
  • Stranica:
  • 1

Vikalica™

Zadnja poruka: pred 11 sati, 50 minuta
  • smayoo: Evo stavio sam ja [link]
  • dpasaric: To je vrijedan link, nemoj da se izgubi na Vikalici, imamo u forumu grupu MacOS Classic, pa ostavi tamo da ostane
  • IgorD: Da, mogao bih nekom to amjestit full scree da se šokira kad se vrati a komp
  • smayoo: hvala!
  • drlovric: Ovo je tako cool. Svaka cast!!
  • Ender: @IgorD: ovo je sjajno! hvala!
  • IgorD: > Infinite Mac is a collection of classic Macintosh and NeXT system releases and software, all easily accessible from the comfort of a web browser
  • IgorD: Upravo otkrio: [link]
  • m@xym: RIP Deajn Ristanović, jedan od rijetkih koji je postao legenda još za svog života (barem nama koji smo pratili same početke kompjuterizacije u bivšoj državi.
  • smayoo: :(
  • IgorD: Računari itd. RIP
  • Yonkis: Zar Apple nije mogao napraviti bolji emoji za miša, tj za magic mouse?
  • Miro Spiro: Umro Dejan Ristanović :( RIP
  • MacSin: OS stari do X je bio cool
  • MacSin: na poslu su svi na win lenovo aliu kad dodem doma je melem za oci ali kad treba nesto upgarde napravit tad je vec probelm
  • MacSin: OS je i dalje miljama od ostalih no sto se tice hardware to je vec diskutabilno
  • VanjusOS: neki mi javi se privatno, barem ako može kratko posuditi na probu
  • VanjusOS: ljudi, ima li možda netko viška Thunderbolt 2 to Thunderbolt 2 Cable
  • drpongrac23: Davno sam vozio "kockicu"
  • drpongrac23: @Yonkis - Kakav BMW - Uskoro kupujem za sebe Citrć Berlingo, jbg, godine...
  • drpongrac23: A zamjena ekrana preko 500 EUR!
  • drpongrac23: WTF?!? Ušle mi neke "bubice" u ekran na MBA M1. Totalni hit!!! 3 kom. BUBA ŠVABE!!!
  • Yonkis: Drpongrac23: a M5? Ne mislim na BMW.
  • drpongrac23: Preko 30 god. vjerni Apple korisnik - sada je vrijeme da zahvalim svima, ali Apple u mojim očima više nije što je nekad bio.
  • drpongrac23: Ovaj novi MacOS - bye, bye Apple!!! Ćesme od svega!
  • drpongrac23: PC za 400 EUR iz Pevexa žvače taj prastari MacPro za gablec :)
  • drpongrac23: U PC svijetu je DDR5 RAM polako standard - o čemu vi pričate?!?
  • BigMac: i ja kažem, prvo bolja pasta, nego zadnji put, i nižaa temperatura, očito prvi put nisam dobro stegao hladnjake, pa su procesori radili na nižem taktu :(
  • dpasaric: Odlično! :)
  • BigMac: Promjenio pastu na starom mac pro, osvježenje ....
  • smayoo: plus je sigurno problematičan, ali nije jedini
  • dpasaric: Više sam zaboravio koji su sve znakovi u pitanju, ali u tome je stvar.
  • dpasaric: I meni se često dogodi na nešto napišem i samo PUF!
  • dpasaric: Jura, na Vikalici se "progutaju" neki komentari jer postoje neki karakteri koje modul Vikalice ne podnosi i onda to sve samo ode u crnu rupu!
  • jura22: Mozda nezasitan?
  • VanjusOS: evo ja sam isprobao i radi! na A1 je moguće sa fizičke SIM prebaciti se na e-SIM na samom telefonu..
  • Borisone: Jer je gladan!
  • jura22: Zasto Jabucnjak guta komentare?
  • smayoo: :D
  • Borisone: Kako prebacuješ eSIM između moba za koji žena smije i za koji ne smije znat?
  • VanjusOS: ali bravo drlovric, nekad su najjednostavnija rješenje i najbolja!
  • VanjusOS: hahaha, problem je što imam službenu SIM karticu, pa ako mi se sjebe moram tražiti od firme da mi šalju novu...
  • drlovric: Pa probas i samo ce ti se kazati jbt. Sta je najgore sto se moze dogoditi? :)
  • VanjusOS: pitam da li je to itko isprobao?
  • VanjusOS: u iphoneu sa fizičkom sim karticom se pojavila opcija da se prebaci ta fizička sim u e-sim
  • VanjusOS: niste me shvatili, očito
  • miomika: na A1 ti samo pošalju na mail/sms ili putem aplikacije Moj A1 i to je to
  • rusty: Prije jedno 3 godine na Tmobile. u 22h navečer putem supporta jer se u protivnom trebalo ići u poslovnicu
  • VanjusOS: da li je netko isprobao funkciju konvertiranja SIM u e-SIM, i na kojoj mreži?
  • ZoPaj: ha ha, nisu li usbC isforsirali upravo radi štednji na punjačima:)

Za vikanje moraš biti prijavljen.

Prijava

Prisutni jabučari

Novo na Jabučnjaku

Teme

Poruke

Oglasi

Komentari

Anketa

Koji Mac koristite?

Page Speed 0.45 Seconds

Provided by iJoomla SEO