hlmod.hu https://hlmod.hu/ |
|
Rendezés egy Multi-Dimenziós Listán https://hlmod.hu/viewtopic.php?f=114&t=28299 |
Oldal: 1 / 1 |
Szerző: | JohanCorn [ 2017.10.03. 20:49 ] |
Hozzászólás témája: | Rendezés egy Multi-Dimenziós Listán |
MEGOLDVA! A kivitelezés csak az oszlopok elnevezésének közreiktatásával sikerült. Üdv! Tudna valaki írni egy kivitelezési formát az alábbi lista C értéke alapján történő rendezésére? A - B - C 1 - 100 - 20 2 - 300 - 10 3 - 150 - 35 4 - 100 - 10 5 - 999 - 50 Ez a formázás után így nézne ki. A - B - C 4 - 100 - 10 2 - 300 - 10 1 - 100 - 20 3 - 150 - 35 5 - 999 - 50 Másodlagos paraméter nem szükséges nekem sem. |
Szerző: | Silent [ 2017.10.05. 14:53 ] |
Hozzászólás témája: | Re: Rendezés egy Multi-Dimenziós Listán |
Érdemes ilyenkor a megoldást is közzétenni, mivel lehetséges, hogy másnak is szüksége van ilyesmire. Tegyük fel, hogy van egy objektumod, amelynek van 3 property-je. Kód: User { Valamint egy akármilyen kollekciód, amely ilyen típusú objektumokat tárol. Kód: Collection<User> users = getUsersFromSomeDeeperLayer(); Tudsz több féle property alapján is rendezni, tegyük fel, hogy azt szeretnénk, hogy névszerinti, azon belül életkor szerinti növekvő sorrendbe legyenek a userjeink. Ehhez hozzunk létre kettő nevesített comparatort (nem muszáj nevesített, lehet anoním objektumként is összehasonlítani, de ez talán átláthatóbb + újrahasznosítható). Kód: Comparator<User> byName = new Comparator<User>() { Nincs más dolgunk, minthogy lepéldányosítsunk (vagy valami service-ből kérni egy instance-t) egy ComparatorChain osztályt, hozzáadni a comparatorjainkat és rendezni a kollekciót. Kód: final ComparatorChain comparatorChain = new ComparatorChain(); Ez a Java-s megvalósítás, mivel nem írtad miben dolgozol és a Java áll a legközelebb hozzám, így ezt írtam le példaként. |
Szerző: | JohanCorn [ 2017.10.06. 17:28 ] |
Hozzászólás témája: | Re: Rendezés egy Multi-Dimenziós Listán |
Még nem foglalkoztam Java-val, de bizonyára ez a jövőben is hasznos lesz. Jelenleg és a kérdésfeltételkor is PHP-val babráltam. Ez esetben volt egy egyszerű funkció az array_multisort az oszlopok sorba rendezésére. |
Oldal: 1 / 1 | Minden időpont UTC+02:00 időzóna szerinti |
Powered by phpBB® Forum Software © phpBB Limited https://www.phpbb.com/ |