Originariamente inviato da Ghiozzo
sono io che non ho ancora capito il tuo metodo?
No, sono io che all'1:20 di Sabato sera sono un pò fuso e non avevo considerato questa eventualità

Ok... solo quel controllo non basta. Con il controllo che ho fatto io si verifica che il range nuovadatInizio/nuovaDataFine sia esterno ad ogni singolo range. Verificato ciò è necessario poi controllare che solo nuovaDataFine non ricada in un intervallo già presente:

Codice PHP:
boolean okInsert false;
for (
Oggetto obj listaOggetti) {
            if (
obj.getDataInizio().compareTo(nuovoOggetto.getDataInizio()) > && obj.getDataInizio().compareTo(nuovoOggetto.getDataFine()) > 0) {
                
okInsert true;
                break;
            }
}
if (
okInsert) {
            
//superato primo controllo
            
for (Oggetto obj listaOggetti) {
                if (
obj.getDataInizio().compareTo(nuovoOggetto.getDataFine()) < && obj.getDataFine().compareTo(nuovoOggetto.getDataFine()) > 0) {
                    
okInsert false;
                    break;
                }
            }


}
if (
okInsert) {
            ...
} else {
            ...

Così dovrebbe andare... sperando non mi sia sfuggito altro