다음은 List의 Subrist 방법을 사용하여 페이징 목록을 달성하는 데 소개됩니다. 많이 말하지 않으면 코드를보세요
/*** // *** List Paging* 구현 : 목록을 사용하여 목록을 얻으려면 목록의 페이징을 실현하십시오* @Author Xianwu* @Date 2010-1-8 16:27:31*/import java.util.arrayList; Java.util.list 가져 오기; 공개 클래스 pagemodel {private int page = 1; // 현재 페이지 public int totalpages = 0; // 총 페이지 개인 int PagerEcorders; // 페이지 당 5 조각 개인 int totalrows = 0; // 총 데이터 수 개인 int pagestartrow = 0; // 각 페이지의 시작 번호 개인 int pageendrow = 0; // 각 페이지에 표시되는 데이터의 끝 수 개인 부울 hasnextPage = false; // 다음 페이지가 있습니까? 개인 부울 haspreviouspage = false; // 이전 페이지 비공개 목록 목록이 있습니까? // 개인 반복자; public pagemodel (목록 목록, int pagerecorders) {init (목록, PageRecorders); // 총 레코드 수는 객체 세트}/*** // *** 페이지 당 목록을 초기화하고 페이지 당 레코드 목록을 알려줍니다. 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; }} // paging public boolean isnext () {return list.size ()> 5; } public void sethaspreviouspage (boolean haspreviouspage) {this.haspreviouspage = haspreviouspage; } public String toString (int temp) {String str = integer.tostring (temp); Return str; } public void description () {String description = "데이터 수 :" + this.getTotalRows () + "페이지 수 :" + this.getTotalPages () + "현재 페이지 :" + this.getPage () + "는 이전 페이지가 있습니다. this.getPagestArtrow () + "종료 선 카운트 :" + this.getPageEndrow (); System.out.println (설명); } 공개 목록 getNextPage () {page = page + 1; drosposepage (); System.out.println ( "사용자는" + page + "page"); this.description (); GetObjects (페이지)를 반환합니다. }/***// ***핸들 페이징*/private void disposepage () {if (page == 0) {page = 1; } if ((페이지 -1)> 0) {haspreviousPage = true; } else {haspreviouspage = false; } if (page> = TotalPages) {hasnextPage = false; } else {hasnextPage = true; }} 공개 목록 getPreviousPage () {page = page -1; if ((페이지 -1)> 0) {haspreviouspage = true; } else {haspreviouspage = false; } if (page> = TotalPages) {hasnextPage = false; } else {hasnextPage = true; } this.description (); GetObjects (페이지)를 반환합니다. }/** * // ** * 어떤 페이지의 내용을 가져옵니다 * @param page * @return */public list getObjects (int page) {if (page == 0) this.setpage (1); 그렇지 않으면 this.setpage (페이지); this.disposepage (); if (page * pageRecorders <totalrows) {// 마지막 페이지 PageEndrow인지 판단합니다. PageEndrow = page * PageRecorders; PagestArtrow = PageEndrow -Pagerecorders; } else {PageEndrow = TotalRows; pagestartrow = PagereCorders * (TotalPages -1); } list 객체 = null; if (! list.isempty ()) {objects = list.sublist (pagestartrow, pageendrow); } //this.description (); 반환 개체; } public list getFistPage () {if (this.isnext ()) {return list.sublist (0, PageRecorders); } else {반환 목록; }} public boolean ishasnextpage () {return hasnextPage; } public void sethasnextpage (boolean hasnextPage) {this.hasnextPage = hasnextPage; } public list getList () {반환 목록; } public void setList (목록 목록) {this.list = list; } public int getPage () {반환 페이지; } 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 PeageRecorders; } public void setPageRecorders (int pagerecorders) {this.pagerecorders = pagerecorders; } public int getPagestArtrow () {return pagestartrow; } public void setpagestartrow (int pagestartrow) {this.pagestartrow = pagestartrow; } 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; }} // 테스트 클래스 : 패키지 com.gavin.tools.util; java.util.arraylist 가져 오기; Java.util.list 가져 오기; 공개 클래스 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 = 새로운 pagemodel (list, 5); list subrist = pm.getObjects (3); for (int i = 0; i <sublist.size (); i ++) {system.out.println (sublist.get (i)); } system.out.println (sublist.get (0)); }}위는이 기사의 모든 내용입니다. 모든 사람의 학습에 도움이되기를 바랍니다. 모든 사람이 wulin.com을 더 지원하기를 바랍니다.