Je topicstart leeghalen nadat je geholpen bent is niet cool. Ik heb de topicstart dan ook weer in ere hersteld.
Hallo,
Ik vroeg me af of iemand ervaring heeft met c# en gebruik van Comparer om objecten te vergelijken met elkaar. het gaat om een Manille Kaartspel waar ik de Kaarten in het Dek wil ordenen in Manille volgorde dus van Tien Aas Heer enzo.... De Kaarten worden via een Klasse gemaakt en er word gebruik gemaakt van Enums om ze te creeren. Hieronder de Code die ik nu heb om dit proberen te bekomen maar waar Ik alleen in slaag om de sorteren via de volgorde hoe ze in de enums staan. Het is de bedoeling om de originele enums niet aan te passen. :
De vet gedrukte Code is waar ik het sorteren toepas. Bestaat hier iets om code als code te tonen hier ?
Groeten cooller
Hallo,
Ik vroeg me af of iemand ervaring heeft met c# en gebruik van Comparer om objecten te vergelijken met elkaar. het gaat om een Manille Kaartspel waar ik de Kaarten in het Dek wil ordenen in Manille volgorde dus van Tien Aas Heer enzo.... De Kaarten worden via een Klasse gemaakt en er word gebruik gemaakt van Enums om ze te creeren. Hieronder de Code die ik nu heb om dit proberen te bekomen maar waar Ik alleen in slaag om de sorteren via de volgorde hoe ze in de enums staan. Het is de bedoeling om de originele enums niet aan te passen. :
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
| enum Nummer { Aas = 1, Twee, Drie, Vier, Vijf, Zes, Zeven, Acht, Negen, Tien, Boer, Dame, Heer } enum Kleur { Schoppen, Harten, Klaveren, Ruiten } class Kaart { public Kaart(Kleur kleur, Nummer nummer) { Kleur = kleur; Nummer = nummer; } public Kleur Kleur { get; } public Nummer Nummer { get; } } class ManilleDek : Dek { protected override void VulDekOp() { foreach (Kleur k in System.Enum.GetValues(typeof(Kleur))) { foreach (Nummer n in System.Enum.GetValues(typeof(Nummer))) { if (n == Nummer.Aas || n == Nummer.Zeven || n == Nummer.Acht || n == Nummer.Negen || n == Nummer.Tien || n == Nummer.Boer || n == Nummer.Dame || n == Nummer.Heer) this.Add(new Kaart(k, n)); } } } public void SorteerOpWaarde() { ManilleKaartComparer kaartComparer = new ManilleKaartComparer(); Sort(kaartComparer); } } class ManilleKaartComparer : Comparer<Kaart> { public override int Compare(Kaart x, Kaart y) { return y.Nummer.CompareTo(x.Nummer); } } } |
De vet gedrukte Code is waar ik het sorteren toepas. Bestaat hier iets om code als code te tonen hier ?
Groeten cooller
[ Voor 199% gewijzigd door RobIII op 22-04-2016 16:31 ]