中文字幕日韩精品一区二区免费_精品一区二区三区国产精品无卡在_国精品无码专区一区二区三区_国产αv三级中文在线

java--list轉(zhuǎn)樹形結(jié)構(gòu)-創(chuàng)新互聯(lián)

java–list轉(zhuǎn)樹形結(jié)構(gòu)

1. 雙重循環(huán)

讓客戶滿意是我們工作的目標(biāo),不斷超越客戶的期望值來(lái)自于我們對(duì)這個(gè)行業(yè)的熱愛。我們立志把好的技術(shù)通過有效、簡(jiǎn)單的方式提供給客戶,將通過不懈努力成為客戶在信息化領(lǐng)域值得信任、有價(jià)值的長(zhǎng)期合作伙伴,公司提供的服務(wù)項(xiàng)目有:域名與空間、網(wǎng)頁(yè)空間、營(yíng)銷軟件、網(wǎng)站建設(shè)、同仁網(wǎng)站維護(hù)、網(wǎng)站推廣。

2. 遞歸

3. Stream()

1. 雙重循環(huán)

@Override
	public List
getAddressTree1() {// 獲取數(shù)據(jù)庫(kù)中的所有address數(shù)據(jù) List
list = this.baseMapper.getAddressTree(); // 返回的樹形數(shù)據(jù) List
tree = new ArrayList
(); // 第一次遍歷 for (Address address : list) { // 找到根節(jié)點(diǎn),這里我的根節(jié)點(diǎn)的pid為0 if (address.getPid().equals("0")) { tree.add(address); } // 定義list用于存儲(chǔ)子節(jié)點(diǎn) List
children = new ArrayList
(); // 再次遍歷list,找到子節(jié)點(diǎn) for (Address node : list) { // 子節(jié)點(diǎn)的pid等于父節(jié)點(diǎn)的id if (node.getPid().equals(address.getId())) {children.add(node); } } // 給父節(jié)點(diǎn)設(shè)置子節(jié)點(diǎn) address.setChildren(children); } return tree; }

2. 遞歸

@Override
    public List
getAddressTree2() {// 獲取數(shù)據(jù)庫(kù)中的所有address數(shù)據(jù) List
list = this.baseMapper.getAddressTree(); // 返回的樹形數(shù)據(jù) List
tree = new ArrayList
(); // 第一次遍歷 for (Address address : list) {// 找到根節(jié)點(diǎn),這里我的根節(jié)點(diǎn)的pid為0 if (address.getPid().equals("0")) {tree.add(findChild(address, list)); } } return tree; } private Address findChild(Address address, List
list) {// 定義list用于存儲(chǔ)子節(jié)點(diǎn) List
children = new ArrayList
(); for (Address node : list) {// 找到根節(jié)點(diǎn),這里我的根節(jié)點(diǎn)的pid為0 if (node.getPid().equals(address.getId())) {// 調(diào)用遞歸 children.add(findChild(node, list)); } } address.setChildren(children); return address; }

3. Stream()

@Override
    public List
getAddressTree() {// 獲取數(shù)據(jù)庫(kù)中的所有address數(shù)據(jù) List
addresses = this.baseMapper.getAddressTree(); // 操作所有的address數(shù)據(jù) // 通過Collectors.groupingBy(Address::getPid)方法對(duì)addresses按照Pid進(jìn)行分組,也就是將pid相同的放在一起 Map>addressMap = addresses.stream().collect(Collectors.groupingBy(Address::getPid)); // 循環(huán)addresses,給它設(shè)置children屬性 addresses.forEach(address ->{address.setChildren(addressMap.get(address.getId())); }); // 現(xiàn)在已經(jīng)形成了多棵樹,最后我們?cè)偻ㄟ^filter()方法挑選出根節(jié)點(diǎn)的那顆樹即可。 這里我的根節(jié)點(diǎn)的pid為0 List
resultList = addresses.stream().filter(item ->item.getPid().equals("0")) .collect(Collectors.toList()); return resultList; }

你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機(jī)房具備T級(jí)流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級(jí)服務(wù)器適合批量采購(gòu),新人活動(dòng)首月15元起,快前往官網(wǎng)查看詳情吧

網(wǎng)頁(yè)標(biāo)題:java--list轉(zhuǎn)樹形結(jié)構(gòu)-創(chuàng)新互聯(lián)
瀏覽地址:http://www.rwnh.cn/article16/ddspgg.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供微信小程序建站公司、網(wǎng)站排名、網(wǎng)站設(shè)計(jì)公司、網(wǎng)站導(dǎo)航、外貿(mào)網(wǎng)站建設(shè)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都定制網(wǎng)站建設(shè)
绥芬河市| 南木林县| 灵寿县| 海南省| 新和县| 衡山县| 通许县| 屯门区| 安义县| 巫山县| 华蓥市| 克东县| 高碑店市| 桓仁| 兰西县| 肥东县| 武冈市| 隆昌县| 铅山县| 荔浦县| 醴陵市| 松潘县| 岳普湖县| 彭泽县| 绍兴县| 郑州市| 沛县| 高陵县| 新建县| 福建省| 兴山县| 桐梓县| 乌兰察布市| 房产| 海兴县| 曲水县| 秀山| 宁乡县| 镇康县| 葵青区| 宁安市|