Wie benutzt man subList ()

Ich habe eine JSF Seite, die zeigt die Liste der Glassfish log-Dateien. Ich benutze lazy loading " für den Seitenumbruch. Ich halte die Liste der log-Dateien-Namen in Java List.

private List<directoryListObj> dataList = new ArrayList<>();

dataList = dataList.subList(firstRow, lastRow);

- Und hier liegt das problem. Zum Beispiel habe ich 35 Dateien in das Verzeichnis. Wenn ich dies tun

dataList = dataList.subList(5, 15);

Funktioniert es einwandfrei. Aber wenn ich das mache:

dataList = dataList.subList(30, 38);

Ich erhalten den Fehler " falscher index, weil ich möchte index ausserhalb der Liste. Wie kann ich zum Beispiel return Liste Elemente von 30 bis 35? Ich will, wenn ich will-index von 30 bis 40 aber wenn es nur 35 Indizes, um nur die 5.

Kommentar zu dem Problem
dataList = dataList.Unterliste(30, 38 > dataList.size() ? dataList.size() : 38); Kommentarautor: pb2q
Oder dataList.Unterliste(30, Math.min(38, dataList.size()) Kommentarautor: Ismail Badawi
@pb2q sieht aus wie Sie verloren haben die chance für eine Antwort. Kommentarautor: Luiggi Mendoza
Wenn Sie einen Blick auf die apidoc unterbreitet Sie werden feststellen, dass es wirft IndexOutOfBoundsException - endpoint-index-Wert außerhalb des Bereichs (fromIndex < 0 || toIndex > die Größe). So der Blick auf die apidoc unterbreitet für solche Hinweise in Zukunft. Kommentarautor: zeller

InformationsquelleAutor der Frage user1285928 | 2012-08-23

Schreibe einen Kommentar