/* * Metodo per controllare l'esistenza di una riga di formazione * prezzo all'interno della lista delle righe assegnata all'azienda */ private boolean check_Exist( final ArrayList<Riga_Form_Prezzo> listino, final Riga_Form_Prezzo riga) { for (Riga_Form_Prezzo r1 : listino) { if (r1.equals(riga)) return true; } return false; }
/* * Metodo statico che permette il confronto tra due * liste di righe di formazione prezzo di una anagrafica */ private static boolean stesse_righe( final ArrayList<Riga_Form_Prezzo> c1, final ArrayList<Riga_Form_Prezzo> c2) { // Variabile per controllare se le due liste sono uguali; boolean uguali = true; // Variabile per controllo che le singole righe formaz siano uguali; boolean righe = false; // Controllo che le due liste abbiano stesso numero di righe di formz; if (c1.size() == c2.size()) { // Se hanno lo stesso numero, ciclo su entrambe le liste // per confrontare membro a membro se ci c'e' ugualianza // tra tutti le righe di entrambe; for (Riga_Form_Prezzo x : c1) { for (Riga_Form_Prezzo y : c2) { // Quando trovo l'elemento in comune setto a vero // il flag che indica l'ugualianza della riga; if (x.equals(y)) righe = true; } // Se dopo il ciclo il flag e' rimasto a FALSE, la // riga non e' stata trovato quindi il flag di // ugualianza viene settato a FALSE e si esce dai cicli; if (!righe) { uguali = false; break; } else { // Se dopo il ciclo il flag e' passato a TRUE vuol // dire che la riga e' stata trovata quindi // imposto di nuovo il controllo a FALSE per il // ciclo successico righe = false; } } } else uguali = false; // Se le lunghezze sono diverse le liste saranno sicuramente // diverse a prescindere; return uguali; }