PAYATHON 2026

PlantUML 活动图如何合并多个 no 回边?

数据小许

如果只有在这几个问题都回答 yes 时才执行 Success,可以将它们合并为一个条件判断。这样图中只需保留一个判断节点,no 路径会回到 while 循环。

@startuml
start
while (Work to do?) is (found)
  if (Questions 2-5 all answered yes?) then (yes)
    :Success;
    break
  else (no)
  endif
endwhile (no more)
end
@enduml

原代码将 Question 2 到 Question 5 写成嵌套的 if。每层都有自己的分支和 endif 合并点,所以图中会出现多个分支节点和回边。合并判断后,只要有一个问题的答案是 no,就会进入同一个 else 分支,再回到循环入口。全部回答 yes 时,流程执行 Success,然后通过 break 退出循环。PlantUML 活动图支持 if/else/endif、while/endwhile,也支持在循环中使用 break。活动图条件分支、while 循环、循环中的 break

这里将多个问题合并为一个整体判断。如果图中需要分别显示每个问题,就要保留多个判断节点。可以调整各个 no 分支的布局,但不要把它们画成一个条件节点。

备注:内容仅供参考。