for循环嵌套遍历

**
for循环嵌套遍历list集合中所有内容 **
第一种方式

package com.nnf.controller; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import com.nnf.model.TGoodsCategory; import com.nnf.service.TGoodsCategoryService; @Controller public class InitController { @Autowired private TGoodsCategoryService tcs; @RequestMapping("init") public String init(HttpServletRequest request, HttpServletResponse response, HttpSession session) {//商品一级分类 System.out.println("一级划分:"); List firstList = tcs.selectByGoodsCategoryParentId(0); //一级分类树状结构0-->服装 食品电子厂品 eg List first =new ArrayList(); List second =new ArrayList(); List third =new ArrayList(); first.addAll(firstList); //将一级列表添加到新的列表中 for(int m=0; m secondList = tcs.selectByGoodsCategoryParentId(p); //二级分类服装-->男装、女装、内衣 eg second.addAll(m, secondList); for(int n=0; n thirdList =tcs.selectByGoodsCategoryParentId(q); //三级分类男装--> T恤 上衣 third.addAll(n, thirdList); for(int z=0; z

测试结果:
for循环嵌套遍历
文章图片

第二种方式 我这里一级分类是已经固定的,接下来根据一级列表查询数据库获得二级分类列表集合,这个时候想要进行三级分类列表查找就必须进行循环遍历,我新建一个实体类,二级分类具体的ID,名称,他的子类集合即三级分类列表集合便是这个实体类的属性。最后再根据我后面的方法循环遍历所有内容。
package com.nnf.controller; import java.util.ArrayList; import java.util.HashMap; import java.util.Iterator; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpSession; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Controller; import org.springframework.web.bind.annotation.RequestMapping; import com.nnf.model.SecondTGoodsCategory; import com.nnf.model.TGoodsCategory; import com.nnf.service.TGoodsCategoryService; @Controller public class InitController_2 { @Autowired private TGoodsCategoryService tcs; @RequestMapping("init2") public String init(HttpServletRequest request, HttpServletResponse response, HttpSession session) { // 商品一级分类 System.out.println("一级划分:"); List firstList = tcs.selectByGoodsCategoryParentId(0); for(int i=0; i clothList = tcs.selectByGoodsCategoryParentId(1); //服装列表 for(int i=0; i foodList = tcs.selectByGoodsCategoryParentId(2); //食物列表 List eleProductsList = tcs.selectByGoodsCategoryParentId(3); //电子产品列表 List electricityList = tcs.selectByGoodsCategoryParentId(4); //电器 List sportList = tcs.selectByGoodsCategoryParentId(5); //运动列表 // 商品三级分类 System.out.println("三级划分:"); //List clothList = tcs.selectByGoodsCategoryParentId(1); //服装列表 List clothThirdAllList = new ArrayList(); List ss = new ArrayList(); for (int z = 0; z < clothList.size(); z++) { int goodsCategoryParentId = clothList.get(z).getGoodsCategoryId(); //二级分类的各个ID即三级分类列表的父类ID String cName = clothList.get(z).getGoodsCategoryName(); List clothThirdList = tcs.selectByGoodsCategoryParentId(goodsCategoryParentId); //单条三级列表SecondTGoodsCategory s = new SecondTGoodsCategory(); //一个实体类,实体类中的属性分别为 父类ID 父类名称所包含子类列表 s.setParentId(goodsCategoryParentId); s.setcName(cName); s.setList(clothThirdList); ss.add(s); }for(int i=0; i

测试结果:
for循环嵌套遍历
文章图片
新建的实体类以及jsp页面如何调用:
for循环嵌套遍历
文章图片

jsp页面显示结果,这里设置循环次数为5.可自行更改
【for循环嵌套遍历】for循环嵌套遍历
文章图片

    推荐阅读