Ce qui suit est une introduction à l'utilisation de la méthode subliste de la liste pour réaliser la liste de pagination. Si vous ne dites pas grand-chose, regardez simplement le code
/ ** * // ** * Liste Paging * Implémentation: Utilisez la méthode sous-traitante de la liste pour réaliser la pagination de la liste * @Author Xianwu * @Date 2010-1-8 16:27:31 * * / Importer java.util.arraylist; Importer java.util.list; classe publique PageModel {private int page = 1; // Page actuelle publique int totalPages = 0; // Nombre total de pages private int pagerecorders; // 5 éléments de données par page int private totalrows = 0; // Nombre total de données private int pagestartrow = 0; // Démarrer le numéro de chaque page private int pageEndrow = 0; // Le nombre final de données affiché sur chaque page Boolean privé HasnextPage = false; // y a-t-il la page suivante booléenne privée haspreviousPage = false; // existe-t-il une liste privée de page précédente; // iterator privé; Public PageModel (List List, int pagereCorders) {init (liste, pagereCorders); // Le nombre total d'enregistrements est divisé via l'ensemble d'objets} / ** * // ** * Initialiser la liste et informer la liste des enregistrements par page * @param liste * @param pagerecorders * / public Void init (list list, int pagereCorders) {this.pagorders =) PagereRecorders; this.list = list; totalrows = list.size (); // it = list.iterator (); haspreviousPage = false; if ((totalrows% pagereCorders) == 0) {totalPages = totalrows / pagereCorders; } else {totalPages = totalrows / pagerecorders + 1; } if (page> = totalPages) {HasnextPage = false; } else {HasnextPage = true; } if (totalrows <pagereCorders) {this.pageStArtrow = 0; this.pageendRow = totalrows; } else {this.pageStArtrow = 0; this.pageendRow = pagereCorders; }} // Déterminez s'il pour paginer public booléen isnext () {return list.size ()> 5; } public void SethaspreviousPage (boolean haspreviousPage) {this.haspreviousPage = HaspreviousPage; } public String toString (int temp) {String str = Integer.ToString (temp); retour STR; } public void description() { String description = "Number of data:" + this.getTotalRows() + "Number of pages: " + this.getTotalPages() + "Current pages:" + this.getPage() + " Is there a previous page: " + this.isHasPreviousPage() + " Is there a next page:" + this.isHasNextPage() + " Start line count:" + this.getPageStArtrow () + "Terminer le nombre de lignes:" + this.getPageEndrow (); System.out.println (Description); } public list getNextPage () {page = page + 1; dissosepage (); System.out.println ("l'utilisateur utilise la page" + page + ""); this.description (); return getObjects (page); } / ** * // ** * Gire Paging * / private void dissosepage () {if (page == 0) {page = 1; } if ((page - 1)> 0) {haspreviousPage = true; } else {haspreviousPage = false; } if (page> = totalPages) {HasnextPage = false; } else {HasnextPage = true; }} public list getPreviousPage () {page = page - 1; if ((page - 1)> 0) {haspreviousPage = true; } else {haspreviousPage = false; } if (page> = totalPages) {HasnextPage = false; } else {HasnextPage = true; } this.deScription (); return getObjects (page); } / ** * // ** * Obtenez le contenu de quelle page * * @param page * @return * / public list getObjects (int page) {if (page == 0) this.setPage (1); else this.setPage (page); this.Disposepage (); if (page * pagereCorders <totalrows) {// Déterminez s'il s'agit de la dernière page PageEndrow = page * pagereCorders; PagestArtrow = PageendRow - PageRerecorders; } else {PageendRow = TotalRows; pagestartrow = pagereCorders * (total pages - 1); } List objets = null; if (! list.isempty ()) {objets = list.sublist (pagestartrow, pageendRow); } //this.description (); return objets; } public list getFistPage () {if (this.isnext ()) {return list.sublist (0, pagereCorders); } else {return list; }} public boolean isHasNextPage () {return HasnextPage; } public void sethasnextpage (boolean hasnextpage) {this.hasnextpage = hasnextpage; } public list getList () {return list; } public void setList (list list) {this.list = list; } public int getPage () {return page; } public void setPage (int page) {this.page = page; } public int getPageEndrow () {return PageendRow; } public void setPageEndrow (int pageEndrow) {this.pageendRow = pageEndRow; } public int getPageRecorders () {return pageRecorders; } public void setPageRecorders (int pagereCorders) {this.pagerecorders = pagereCorders; } public int getPAGETARTROW () {return PageStArtrow; } public void SetPArestArtrow (int pagestaRTROW) {this.pageStArtrow = reparestarTrow; } public int getTotalPages () {return totalPages; } public void SettotalPages (int totalPages) {this.totalPages = totalPages; } public int getTotalRows () {return totalrows; } public void SettotalRows (int totalrows) {this.totalrows = totalrows; } public boolean ishaspreviousPage () {return haspreviousPage; }} // Classe de test: package com.gavin.tools.util; import java.util.arraylist; Importer java.util.list; classe publique TestPagerModel {public static void main (String args []) {list <string> list = new ArrayList <string> (); list.add ("a"); list.add ("b"); list.add ("c"); list.add ("d"); list.add ("e"); list.add ("f"); list.add ("g"); list.add ("h"); list.add ("h"); list.add ("i"); list.add ("j"); list.add ("k"); list.add ("l"); list.add ("m"); PageModel PM = nouveau PageModel (liste, 5); List sublist = pm.getObjects (3); for (int i = 0; i <sublist.size (); i ++) {System.out.println (sublist.get (i)); } System.out.println (sublist.get (0)); }}Ce qui précède est tout le contenu de cet article. J'espère que cela sera utile à l'apprentissage de tous et j'espère que tout le monde soutiendra davantage Wulin.com.