Java 8 - Flux ForEach Imbriquée avec différentes collections

J'essaie de comprendre le nouveau Java 8 Ruisseaux et j'ai essayé pendant des jours pour le transfert de imbriqués les boucles foreach sur la collecte en Java 8 Ruisseaux.

Est-il possible de refactoriser le suivant imbriqués les boucles foreach, y compris la si-les conditions dans Java 8-Flux?

Si oui, quel serait-il ressembler.

ArrayList<ClassInq> Inq = new ArrayList<>();
TreeMap<String, SalesQuot> Quotations = new TreeMap<>();

ArrayList<ClassInq> tempInqAndQuot = new ArrayList<>();
ArrayList<SalesQuot> tempQuotPos = new ArrayList<>();   

for(ClassInq simInq : this.Inq) {
    if(!simInq.isClosed() && !simInq.isDenied()) {
        for(Map.Entry<String, SalesQuot> Quot: Quotations.entrySet()) {

            SalesQuot sapQuot = Quot.getValue();

            if(sapQuot.getInquiryDocumentNumber().compareTo(simInq.getSapInquiryNumber()) == 0) {

                simInq.setSAPQuotationNumber(sapQuot.getQuotationDocumentNumber());
                tempInqAndQuot.add(simInq);

                for(Map.Entry<String, SalesQuotPosition> quotp : sapQuot.getPosition().entrySet()) {
                    tempQuotPos.add(quotp.getValue());
                }
            }
        }
    }
}

Merci beaucoup pour votre aide.

BR

Êtes-vous sûr que ce code est correct? Vous ajoutez le même objet plusieurs fois pour les mêmes collections, puisque vous appelez tempInqAndQuot.add(simInq) dans la boucle interne.
Devrait tempQuotPos être définie comme ArrayList<SalesQuotPosition>?
Salut, c'est vrai, la liste de tableaux doivent de type SalesQuotPosition

OriginalL'auteur user1796346 | 2014-08-18