作者conlich (clcy)
看板java
標題[問題] 上下階層的查詢問題
時間Fri May 26 08:57:05 2017
各位前輩好,小弟想要作一個功能是類似資料夾目錄的勾選功能,資料結構如下
chk ID NAME UPID
0 1 A 0
0 2 B 1
0 3 C 2
0 4 D 2
0 5 E 1
0 6 F 5
0 7 G 5
0 8 H 7
0 9 I 1
0 10 J 9
用圖示表示會是這樣子:
1------->2-->3
>4
>5-->6
>7-->8
>9-->10
我想作的功能是當我將其中一個CHK改為1時,需要把UPID=我勾選的ID CHK改為1,而
連帶的把再下一層的CHK也改為1。
EX:我改了ID:1,會往下改ID:2、5、9的CHK,而因為3的UPID(2)有被改了,所以3、4
會被改。
我本來用2層for迴圈去作,但是效能很差,請問有更好的方式嗎?
謝謝。
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 61.221.49.25
※ 文章網址: https://www.ptt.cc/bbs/java/M.1495760228.A.97F.html
※ 編輯: conlich (61.221.49.25), 05/26/2017 09:12:44
※ 編輯: conlich (61.221.49.25), 05/26/2017 15:32:33
→ pttworld: tree 05/26 15:43
推 csieflyman: 儲存至檔案或資料庫? 05/26 20:06
→ johnny4753: 如果是存db的話,先把整顆tree的id撈出來,然後做batc 05/26 20:50
→ johnny4753: h update 05/26 20:50
→ conlich: 謝謝大家建議,後來我用階層去判斷如果遇到1表示回到主 07/14 09:22
→ conlich: 錄,就直接跳離迴圈了,這樣子至少不用掃全部的階層. 07/14 09:23