Wpis z mikrobloga

#java #javapomoc

Co oznacza dwukropek w tym kodzie?

private Song findSong(String title) {
for(Song checkedSong: this.songs) {
if(checkedSong.getTitle().equals(title)) {
return checkedSong;
}
}
return null;
  • 6
  • Odpowiedz
@borrow: to tzw. foreach za pomocą słowa kluczowego for. Po prostu naucz się tej składni. Będzie iterowana kolekcja this.songs, każdy element z niej będzie typu Song i zostanie umieszczony w zmiennej checkedSong. Sam znak dwukropka nie ma szczególnego znaczenia, jest nieodłączną częścią foreacha tak jak średniki są nieodłączną częścią zwykłego fora.
  • Odpowiedz
@fegwegw: są czytelniejsze (tj jaśniej pokazują „intencje” kodu - czy chce coś z kolekcji wyrzucić, dodać, przetworzyć, nie muszę się tego z ifow ze środka domyślać, często pozagniezdzanych), dzięki parallel streams łatwo zrownoleglic przetwarzanie, w połączeniu z lambdami dają czytelniejszy kod. Więcej tutaj na przykład: https://stackoverflow.com/questions/44180101/in-java-what-are-the-advantages-of-streams-over-loops
  • Odpowiedz