1.Come il codice sopra, voglio impostare il valore di una variabile accanto al blocco foreach, può funzionare?In java8, come impostare il valore globale nel blocco foreach di lambda?
2. E perché?
3. E l'iteratore predefinito è in ordine o disordine?
4. Credo che il blocco di lamda foreach sia semplice e freddo per l'iteratore, ma questa è una cosa molto complicata da fare piuttosto che lo stesso lavoro in java 7 o precedenti.
il ciclo può essere sostituito (per esempio) da 'if (list.stream() filtro ("d" :: uguale) .findAny () .isPresent()) x = "confronta il valore"; '. Nella maggior parte dei casi, ci sarà un modo per scrivere il codice senza dover manipolare variabili esterne. – assylias
@assylias: 'if (list.stream(). AnyMatch (" d ":: equals)) ...' o 'if (list.contains (" d ")) ...' – Holger
@Holger Argh - Mi dimentico sempre di ciò metodo (anyMatch) e sì anzi, contiene ancora meglio. Grazie! – assylias