using System.Collections.Generic;
public static void ProofSomeFactsAboutComparing() {
if(4 > 3) { Console.WriteLine("4 > 3"); }
if(new DateTime(2018,1,2) > new DateTime(2018, 1, 1)) { Console.WriteLine("2018-01-02 > 2018-01-01"); }
if("Alfred".CompareTo("Zorro") < 0) Console.WriteLine("Alfred < Zorro");
if(4.CompareTo(3) > 0) { Console.WriteLine("4 > 3"); }
if((new DateTime(2018,1,1)).CompareTo(new DateTime(2018, 1, 2)) < 0) { Console.WriteLine("2018-01-01 < 2018-01-02"); }
public static void ComparePersonsDemo() {
Persoon a = new Persoon("Jos", "Bosmans");
Persoon b = new Persoon("Jan", "Janssens");
if( a.CompareTo(b) < 0 ) {
Console.WriteLine("{0} komt voor {1}", a.Voornaam, b.Voornaam);
Console.WriteLine("{0} komt na {1}", a.Voornaam, b.Voornaam);
public static void UsefulDemo() {
var mensen = new List<Persoon>() {
foreach(var mens in mensen) {
Console.WriteLine(mens.Voornaam);
public static void Main(string[] args)
ProofSomeFactsAboutComparing();
class Persoon : IComparable<Persoon>
public string Voornaam { get; set; }
public string Achternaam { get; set; }
public int Leeftijd { get; set; }
public Persoon(string voornaam, string achternaam)
this.Voornaam = voornaam;
this.Achternaam = achternaam;
public void PrintPersoon()
Console.WriteLine("{0} {1}", Voornaam, Achternaam);
public int CompareTo(Persoon other) {
return this.Leeftijd.CompareTo(other.Leeftijd);