Zipper vs. iterator for walking over a list or tre

2019-04-21 12:28发布

Suppose I need to walk over a list or tree to read (but not modify) the data. I can use either an iterator or a Zipper. Does Zipper have any advantages aside from immutability in this case?

标签: scala zipper
1条回答
家丑人穷心不美
2楼-- · 2019-04-21 13:16

Do you need to backtrack or otherwise move around in the structure in a non-sequential order? Do you want to be able to traverse the structure multiple times without worrying about where you left the iteration? Do you want to avoid thinking about concurrent access or thread safety? Go with the zipper.

Do you know for a fact that you need the extra performance an iterator can provide in some situations? Are you working on a team that doesn't want to learn about a new abstraction? Go with the iterator.

查看更多
登录 后发表回答