Wie kann ich den letzten Wert einer ArrayList erhalten?
Antworten
Zu viele Anzeigen?Der letzte Punkt in der Liste ist list.size() - 1
. Die Sammlung wird von einem Array unterstützt und Arrays beginnen bei Index 0.
Element 1 in der Liste befindet sich also bei Index 0 in der Matrix
Element 2 in der Liste befindet sich bei Index 1 in der Matrix
Element 3 in der Liste befindet sich bei Index 2 in der Matrix
und so weiter
Wenn Sie Ihre Liste ändern, dann verwenden Sie [listIterator()
](http://docs.oracle.com/javase/7/docs/api/java/util/ArrayList.html#listIterator()) und iterieren vom letzten Index (d.h. size()-1
bzw.). Wenn Sie erneut scheitern, überprüfen Sie Ihre Listenstruktur.
Wie wäre es damit... Irgendwo in eurer Klasse...
List<E> list = new ArrayList<E>();
private int i = -1;
public void addObjToList(E elt){
i++;
list.add(elt);
}
public E getObjFromList(){
if(i == -1){
//If list is empty handle the way you would like to... I am returning a null object
return null; // or throw an exception
}
E object = list.get(i);
list.remove(i); //Optional - makes list work like a stack
i--; //Optional - makes list work like a stack
return object;
}
Alles, was Sie tun müssen, ist size() zu verwenden, um den letzten Wert der ArrayList zu erhalten. Wenn Sie z.B. eine ArrayList mit ganzen Zahlen haben, dann müssen Sie, um den letzten Wert zu erhalten, Folgendes tun
int lastValue = arrList.get(arrList.size()-1);
Denken Sie daran, dass der Zugriff auf Elemente in einer Arraylist über Indexwerte erfolgt. Daher werden ArrayLists im Allgemeinen zum Suchen von Elementen verwendet.