Heim  >  Artikel  >  Backend-Entwicklung  >  C# verwendet LINQ, Generics und Indexfunktionen, um Switch-Anweisungen (oder mehrere If-Anweisungen) zu optimieren

C# verwendet LINQ, Generics und Indexfunktionen, um Switch-Anweisungen (oder mehrere If-Anweisungen) zu optimieren

黄舟
黄舟Original
2017-02-21 10:55:292285Durchsuche

Hintergrund:
Stellen Sie fest, ob eine Variable in „.txt.doc.xls.ppt.pdf“ ein bestimmtes Format hat, und führen Sie in diesem Fall den entsprechenden Vorgang aus.

Methode 1: Generika verwenden

readonly IList<String> fNames = new List<String>() {
             ".doc",
             ".txt",
             ".xls",
             ".ppt",
             ".pdf"
        };
private void Test(string fName)
{ 
    if(fNames.Contains(fName))
	{
        MessageBox.Show(fName);
    }
}

Methode 2: LINQ verwenden

private void Test(string fName)
{
    if (new string[] { ".doc", ".txt", ".xls" }.Any(x => fName == x))
    {
        MessageBox.Show(fName);
    }
}

Wenn es && ist, verwenden Sie Alle

Wissenserweiterung:

LINQ-Abfragesyntax

Lambda-Ausdrucksausdrucksbaum

Ein einfaches Anwendungsbeispiel einer LINQ-Abfrage

Methode 3: Indexfunktion verwenden

private void Test(string fName)
{
    string str = ".txt.doc.xls.ppt.pdf";
    if (str.IndexOf(fName) >= 0)
    {
        MessageBox.Show(fName);
    }
}

C#-IndexOf-Verwendung

Das Obige ist C#, das LINQ, Generika und die Indexfunktion verwendet, um den Switch (oder Weitere If)-Anweisungen finden Sie auf der chinesischen PHP-Website (www.php.cn), um weitere verwandte Inhalte zu erhalten!




Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn