ok, ho già fatto così ma poi mi viene un arraylist di 10480 elementiVVoVe:
perchè mi vengono duplicati i valori...non capisco come mai, allora ho provato ad usare una TreeMap<key,value> dove per key ho usato l'id, ma i valori della mappa diventano 340:
non riesco a capire dove sta l'errore...mi sto bloccandocodice:private List<Record> accessRecords = new ArrayList<Record>(); private List<Record> sqlServerRecords = new ArrayList<Record>(); private List<Record> newRecords = new ArrayList<Record>(); oppure private Map<String, Record> newRecords = new TreeMap<String, Record>(); ........ ....... public List<Record> arrayCompare(){ for(Record ra : accessRecords){ String accessLinguaOid = ra.getRif_lingua_oid(); for(Record rb : sqlServerRecords){ int compare = accessLinguaOid.compareTo(rb.getRif_lingua_oid()); System.out.println(compare); if(compare != 0){ newRecords.add(new Record(ra.getRif_lingua_oid(), ra.getRif_lingua(), ra.getData_ult_mod(), ra.getUtente_ult_mod(), ra.getPostazione_ult_mod())); } } } System.out.println("newRecords size NEW: " + newRecords.size()); System.out.println("accessRecords size NEW: " + accessRecords.size()); return newRecords; } oppure public Map<String, Record> arrayCompare(){ for(Record ra : accessRecords){ String accessLinguaOid = ra.getRif_lingua_oid(); for(Record rb : sqlServerRecords){ boolean compare = accessLinguaOid.equalsIgnoreCase(rb.getRif_lingua_oid()); System.out.println(compare); if(compare == false){ newRecords.put(accessLinguaOid,new Record(ra.getRif_lingua_oid(), ra.getRif_lingua(), ra.getData_ult_mod(), ra.getUtente_ult_mod(), ra.getPostazione_ult_mod())); } } } System.out.println("newRecords size NEW: " + newRecords.size()); System.out.println("accessRecords size NEW: " + accessRecords.size()); return newRecords; }![]()

VVoVe:

Rispondi quotando