abbiamo questo errore:

codice:
Exception in thread "main" java.lang.IndexOutOfBoundsException: Index: 2, Size: 2

at java.util.ArrayList.RangeCheck(ArrayList.java:547)
at java.util.ArrayList.get(ArrayList.java:322)

....
cosa significa?

Agenda.java (confronto)
codice:
public Appuntamento confronta(String[] dati){
int durata = (Integer.parseInt(dati[4]));
	    numeroAppuntamenti = vAppuntamenti.size();
	    if (numeroAppuntamenti<=1){}	    
		    else {
		    
		    int conta_app=0;

	    for (int i = 0; i <= numeroAppuntamenti; i++) {
	      p = vAppuntamenti.get(i);
	     String durata_esistente=p.getDurata();
		 String data_esistente = p.getData();
	      if (dati[2].equalsIgnoreCase(data_esistente)) {
	       String ora_esistente=p.getOrario();
		if (dati[3].equalsIgnoreCase(ora_esistente)){
		    conta_app=conta_app+1;
		}
	       }
				if (conta_app>1)
		     System.out.println("ATTENZIONE!!!!!!!!!! \n in quest'orario hai gia' un appuntamento che inizia alle"+ data_esistente  +"e dura "+durata_esistente);

	    }
   }
   return null;
	   }