minimum einer Liste mit einschränkung



  • Hallo ich habe folgenden .Net Code um das kleinste Element einer Liste zu finden:

    Dim minimum = someList.Min(Function(someClass) someClass.someValue)
    

    funktioniert auch gut, aber ich möchte noch hinzufügen dass der Wert 0 für someValue nicht mitberücksichtigt wird. Wie geht das?

    Danke!



  • && someClass.someValue != 0 ?



  • Firefighter schrieb:

    && someClass.someValue != 0 ?

    Das funktioniert nicht.

    Wenn man rein in LINQ bleiben will, ginge z.B. das (in C#, weil VB.net suckt :P):

    someList.Where(someClass => someClass.Value != 0).Min(someClass => someClass.Value);
    


  • GPC schrieb:

    Firefighter schrieb:

    && someClass.someValue != 0 ?

    Das funktioniert nicht.

    Wenn man rein in LINQ bleiben will, ginge z.B. das (in C#, weil VB.net suckt :P):

    someList.Where(someClass => someClass.Value != 0).Min(someClass => someClass.Value);
    

    Stimmt, da hast du Recht.



  • Hi, danke! Mir hat das .Where gefehlt.
    In vb.net sieht es dann so aus

    someList.Where(Function(someClass) someClass.someValue <> 0).Min(Function(someClass) someClass.someValue)
    

    Wobei man das besser in 2 Schritten macht, um eine evtl. leere (gefilterte) Liste abzuhandeln.


Anmelden zum Antworten