Wie zu tun substring in einige Elemente der string-Liste mit lambda

Unten ist meine Liste von String.

["sunday", "monday", "tuesday", "wednesday", "fri", "satur"]

Ich soll Sie entfernen "Tag" aus den Elementen, wenn es zu Ende geht mit "der Tag". Wie dies in Lambda ?

Erwartete Ausgabe in der Liste:

["sun", "mon", "tues", "wednes", "fri", "satur"]

Habe ich versucht den code unten, aber nicht in der Lage, um den Wert zuzuweisen, um die Liste

daysList.stream().forEach(s -> { if(s.endsWith("day")) {
        s = s.substring(0, s.indexOf("day"));
    }});

Kann jemand bitte helfen Sie mir, diese ?

  • Wie zu ersetzen day am Ende mit nichts, also gelten String#replaceAll("day$", "") alle Elemente. Nur eine Idee, wie, um loszuwerden, der Zustand. Wenn Sie nicht schreiben können die geänderten Elemente wieder auf die Liste (ich weiß nicht, dass die API, die wohl noch, aber "forEach" zeigt an, dass es nicht möglich ist), könnten Sie sammeln Sie in einer neuen Liste.
  • warum nimmst du nicht einfach die Liste Durchlaufen mit for-Schleife?
  • Ich habe das gleiche gemacht, Sie können sehen, dass in Frage. meine Frage ist nach dieser operation in meiner Liste haben sollte-Elemente ohne "Tag"
  • Weil er wissen will, wie Sie dies tun, indem eine lambda?
InformationsquelleAutor Pavan | 2015-10-29
Schreibe einen Kommentar