Feedback

C# - Generische Between Methode

Veröffentlicht von am 09.12.2008
(1 Bewertungen)
Immer wieder benötigt man Codefragmente die prüfen ob ein Wert zwischen 2 bestimmten liegt. Diese kleine Methode übernimmt genau diese Aufgabe in Zukunft.

Verwendungsbeispiel

private void button1_Click(object sender, EventArgs e)
{
if (Helper.Instance.IsBetween<int>(5, 1, 20))
MessageBox.Show("Treffer");
else
MessageBox.Show("Schade, leider daneben");
}
}

GFU-Schulungen  [Anzeige]

Visual Studio Team Foundation Server 2017/2015 (TFS) für Entwickler - Kompakt

Nach Teilnahme an dieser Schulung kennen Sie alle wesentlichen Funktionen des TFS für Entwickler. Sie setzen Software-Entwicklung mit dem Visual Studio Team Foundation Server erfolgreich um.

VB.NET Aufbau

Sie verfügen nach der Schulung über fundierte Kenntnisse in der Arbeit mit objektorientierten Modellen in VB.NET und können wiederverwendbare Komponenten eigenständig erzeugen.

    /// <summary>
    /// Singleton Class that holds custom helper methods
    /// </summary>
    public class Helper
    {
        /// <summary>
        /// Singleton Helper Class
        /// </summary>
        public static readonly Helper Instance = new Helper();
        private Helper()
        {
        }
        /// <summary>
        /// Prüft ob value zwischen den übergebenen Grenzen liegt oder einer dieser entspricht
        /// </summary>
        /// <typeparam name="T">Typ der Prüfung muss IComparable implementieren</typeparam>
        /// <param name="value">Wert der geprüft werden soll</param>
        /// <param name="lowest">Mindestwert der eine positive Prüfung ergibt</param>
        /// <param name="highest">Maximalwert der eine positive Prüfung ergibt</param>
        /// <returns></returns>
        public bool IsBetween<T>(T value, T lowest, T highest) where T : IComparable
        {
            return (Comparer<T>.Default.Compare(lowest, value) <= 0 && Comparer<T>.Default.Compare(highest, value) >= 0);
        }
    }
Abgelegt unter Between, C#, Prüfung, >, <, größer, kleiner, gleich, Generic, helper, utility.

3 Kommentare zum Snippet

Rainer Hilmer schrieb am 09.12.2008:
Das erinnert mich stark an meine Extension-Methode Limit<T>.
http://dotnet-forum.de/KnowledgeBase/articles/2008/07/01/305-extension-methods-c-3-spracherweiterung-am-beispiel-eines-value-limiters.aspx
Thorsten Hans schrieb am 10.12.2008:
Hab ich nicht gesehen, sorry. Ich durchsuche normalerweise nicht alle Community Seiten bevor ich ein Snippet adde...
Rainer Hilmer schrieb am 10.12.2008:
Macht nichts, sollte auch kein Vorwurf sein - mehr Eigenwerbung. *fg*
 

Logge dich ein, um hier zu kommentieren!