/**
* 两层循环实现建树
*
* @param treeNodes 传入的树节点列表
* @return
*/
public static List<TreeNode> bulid(List<TreeNode> treeNodes) {
List<TreeNode> trees = new ArrayList<TreeNode>();
for (TreeNode treeNode : treeNodes) {
if ( "0".equals(treeNode.getParentId())) {
trees.add(treeNode);
}
for (TreeNode it : treeNodes) {
if (it.getParentId().equals(treeNode.getId()) ) {
if (treeNode.getChildren() == null) {
treeNode.setChildren(new ArrayList<TreeNode>());
}
treeNode.getChildren().add(it);
}
}
}
return trees;
}
public class HandleListTools {
/**
* 定义分批次入库的数量
*/
public static final int BATCH_NUMBER = 20;
/**
* 拆分list
*
* @param listSize
* @param originalList
*/
public static List<List<?>> splitList(int listSize, List<?> originalList) {
List<List<?>> targetList = new ArrayList<List<?>>();
// 拆分list
int count = listSize / BATCH_NUMBER;
int mod = listSize % BATCH_NUMBER;
for (int i = 0; i < count; i++) {
List<?> subList = originalList.subList(i * BATCH_NUMBER, (i + 1) * BATCH_NUMBER);
targetList.add(subList);
}
if (mod != 0) {
List<?> subList = originalList.subList(count * BATCH_NUMBER, (count * BATCH_NUMBER + mod));
targetList.add(subList);
}
return targetList;
}
}
版权声明:本文为zhangdongnihao原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。