Beispiel #1
0
        public int CompareTo(object obj)
        {
            if (obj == null || obj.GetType() != GetType())
            {
                return(-1);
            }

            Adresse adresse = (Adresse)obj;

            int strasseEqualRate = Strasse.CompareTo(adresse.Strasse);

            switch (strasseEqualRate)
            {
            case 0:
                int hausnummerEqualRate = Hausnummer.CompareTo(adresse.Hausnummer);

                switch (hausnummerEqualRate)
                {
                case 0:
                    int plzEqualRate = Postleitzahl.CompareTo(adresse.Postleitzahl);

                    switch (plzEqualRate)
                    {
                    case 0:
                        return(Ort.CompareTo(adresse.Ort));

                    default:
                        return(plzEqualRate);
                    }

                default:
                    return(hausnummerEqualRate);
                }

            default:
                return(strasseEqualRate);
            }
        }
Beispiel #2
0
        public override bool Equals(object obj)
        {
            Adresse adresse = (Adresse)obj;

            if (obj == null)
            {
                return(false);
            }

            if (ReferenceEquals(obj, this))
            {
                return(true);
            }

            if (obj.GetType() != GetType())
            {
                return(false);
            }

            return(Strasse.Equals(adresse.Strasse) &&
                   Hausnummer.Equals(adresse.Hausnummer) &&
                   Postleitzahl.Equals(adresse.Postleitzahl) &&
                   Ort.Equals(adresse.Ort));
        }