Visualizzazione dei risultati da 1 a 10 su 13

Visualizzazione discussione

  1. #7
    Utente di HTML.it L'avatar di andbin
    Registrato dal
    Jan 2006
    residenza
    Italy
    Messaggi
    18,284
    Quote Originariamente inviata da newutente Visualizza il messaggio
    Avrei una curiosità. Quando si utilizza l'espressione lambda non bisogna inserire il return altrimenti si ha un errore di sintassi, io però credo di aver interpretato male questa cosa perchè ho notato l'esatto contrario invece.

    codice:
    System.out.println("Lista città:\n" + getCittaFiltrate(listaCitta, (citta) -> {return !"".equals(citta.toString());} ) + "\n");    
    System.out.println("Lista città di mare:\n"+ getCittaFiltrate(listaCitta, (citta) -> {return citta.isDiMare();}) + "\n");
    System.out.println("Lista capoluoghi:\n" + getCittaFiltrate(listaCitta, (citta) -> {return citta.isCapoluogo();}) + "\n");
    Il corpo di una lambda expression può essere: 1) una "espressione" oppure 2) un "blocco".

    Quindi:

    (citta) -> {return !"".equals(citta.toString());}

    e

    (citta) -> !"".equals(citta.toString())

    Sono assolutamente equivalenti.

    Ah, e per le regole delle lambda expression, se il parametro è uno solo e non è tipizzato esplicitamente, le parentesi ( ) possono anche essere omesse.
    Ultima modifica di andbin; 02-01-2015 a 22:14
    Andrea, andbin.devSenior Java developerSCJP 5 (91%) • SCWCD 5 (94%)
    java.util.function Interfaces Cheat SheetJava Versions Cheat Sheet

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.