Pagina 2 di 2 primaprima 1 2
Visualizzazione dei risultati da 11 a 13 su 13
  1. #11
    Originariamente inviato da fcorsa
    cmq il problema è proprio il remove. perchè tornando al codice originario se elimino listanew.remove(i); funziona perfettamente , se lo metto da errore al primo if ma solo nel confronto del indice i-esimo e j-esimo.

    come faccio
    Mi sa che non hai capito.....

    se fai ArrayList<Apo> tempnew=listanew; è come se usassi listanew stessa. La lista temporanea prende il riferimento in memoria di listanew e diventano la stessa cosa.

    Al massimo devi fare
    codice:
    ArrayList<Apo> tempnew= new ArrayList<Apo>();
    tempnew.addAll(listanew);
    e poi io ti ho detto di fare un altra cosa e cioè
    cosi:

    codice:
    ArrayList<Apo> tempnew= new ArrayList<Apo>();
    			
    			for(int i=0;i<listanew.size();i++){
    				for(int y=0;y<listaold.size();y++){
    					if(listanew.get(i).Specifica.equals(listaold.get(y).Specifica)&&listanew.get(i).Ordine.equals(listaold.get(y).Ordine)&&listanew.get(i).Item.equals(listaold.get(y).Item)){
    						if(!listanew.get(i).Data_sped.equals(listaold.get(y).Data_sped)||!listanew.get(i).Quantita.equals(listaold.get(y).Quantita)){
    							ApoSpeMod ogg = new ApoSpeMod();
    							ogg.Specifica=listanew.get(i).Specifica;
    							ogg.Ordine=listanew.get(i).Ordine;
    							ogg.Item=listanew.get(i).Item;
    							ogg.Data_old=listaold.get(y).Data_sped;
    							ogg.Data_new=listanew.get(i).Data_sped;
    							ogg.Quantita_old=listaold.get(y).Quantita;
    							ogg.Quantita_new=listanew.get(i).Quantita;
    							ogg.Nota=listanew.get(i).Descrizione;
    							ogg.Nota2=listanew.get(i).Gtec;
    							ogg.Plant=listanew.get(i).Plant;
    							listamod.add(ogg);
    						}
    					tempnew.add(listanew.get(i));
    					
    					}
    				}
    			}
    
    for(int i=0;i<tempnew.size();i++){
         Apo tmp = (Apo)tempnew.get(i);
         listanew.remove(tmp);
    }

  2. #12
    ok capito provo cosi;

  3. #13
    Credo chè ora funzioni devo testarlo di più .
    Ho capito che era un impapocchiamento del size, però non capisco perche si verificava solo nel caso specifico che l'elemento i-esimo di listanew è uguale all'elemento y-esimo di listaold .

    cmq ti ringrazio mi hai aiutato d'avvero tanto, avvolte errori banali compromettono un lavoro intero. ciao grazie DonFrignolo.

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.