IT rekvalifikace s garancí práce. Seniorní programátoři vydělávají až 160 000 Kč/měsíc a rekvalifikace je prvním krokem. Zjisti, jak na to!
Hledáme nové posily do ITnetwork týmu. Podívej se na volné pozice a přidej se do nejagilnější firmy na trhu - Více informací.
Avatar
Lukáš Křehula:20.8.2014 14:33

Zdravím,
chtěl bych pomoct s kolekcemi. Chci vytvořit kolekci, která jako první hodnotu bude obsahovat ENUM, ve kterém budou hodnoty jako čtverec, kruh, obdélník atp.. To bych věděl, ale chtěl bych, aby jako druhou hodnotu obsahovala Point, ale aby mohl mít jakýkoliv počet Pointů (tzn. že čtverec bude mít 4, které se následně pospojují, kruh nebude mít žádný, jenom výšku a šířku atp.)
Chtěl bych vědět, jakou kolekci je na toto nejvhodnější použít a jak se následně přidávají hodnoty, případně mažou.
Díky za případné rady.

 
Odpovědět
20.8.2014 14:33
Avatar
Luboš Běhounek Satik:20.8.2014 14:41

myslis něco jako

Dictionary<MujEnum, List<Point>>

?

Nahoru Odpovědět
20.8.2014 14:41
https://www.facebook.com/peasantsandcastles/
Avatar
Lukáš Křehula:20.8.2014 14:49

Jo, přesně tohle jsem měl na mysli. Děkuji.
Jen bych chtěl vysvětlit, jak se zapisuje do toho ten List<Point> a jak se zjišťuje.

 
Nahoru Odpovědět
20.8.2014 14:49
Avatar
Luboš Běhounek Satik:20.8.2014 15:52

vytvoříš si nový list pointů a ten pak do toho slovníku jen přidáš, třeba nějak takhle:

var tvary = new Dictionary<NazevTvaru, List<Point>>();
var ctverec = new List<Point>();
ctverec.Add(new Point(1,1));
ctverec.Add(new Point(2,1));
ctverec.Add(new Point(2,2));
ctverec.Add(new Point(1,2));
tvary.Add(NazevTvaru.Ctverec, ctverec);
enum NazevTvaru
{
  Ctverec,
  Trojuhelnik,
  Usecka,
}
Nahoru Odpovědět
20.8.2014 15:52
https://www.facebook.com/peasantsandcastles/
Avatar
Lukáš Křehula:20.8.2014 16:39

Hmm, teď jsem zjistil, že Dictionary použít nemůžu, protože můžu mít jenom jeden od každýho obrazce (z Key => Enum). Co se dá ještě použít, krom Dictionary?

Editováno 20.8.2014 16:42
 
Nahoru Odpovědět
20.8.2014 16:39
Avatar
Odpovídá na Lukáš Křehula
Luboš Běhounek Satik:20.8.2014 17:04

Pokud tam potřebuješ mít pro každý klíč (z toho enumu) více záznamů, tak bys potřeboval

Dictionary<NazevTvaru, List<List<Point>>>

nebo si na to napsat nějakou třídu

Nahoru Odpovědět
20.8.2014 17:04
https://www.facebook.com/peasantsandcastles/
Avatar
sadlomaslox25:20.8.2014 17:18

To bude chtit spis vice OOP nez to nejak bastlit do kolekce. Chtelo by to nejspis base class Obrazec a jeho potomky tridy Ctverec, Trojuhelnik ... .

 
Nahoru Odpovědět
20.8.2014 17:18
Avatar
Lukáš Křehula:20.8.2014 21:49

A jak by to OOP mohlo vypadat? Chtěl bych pak později těm obrazcům měnit i velikosti a pozici.

 
Nahoru Odpovědět
20.8.2014 21:49
Děláme co je v našich silách, aby byly zdejší diskuze co nejkvalitnější. Proto do nich také mohou přispívat pouze registrovaní členové. Pro zapojení do diskuze se přihlas. Pokud ještě nemáš účet, zaregistruj se, je to zdarma.

Zobrazeno 8 zpráv z 8.