循环遍历枚举的最佳方式是什么?循环遍历枚举
我有一个枚举方向,我想循环遍历它。目前我已经在枚举中实现了下一个方法,它返回下一个值,我只是想知道是否有更好的方式/内置支持循环遍历。
当前代码
enum Direction {
east, north, west, south;
Direction next() {
switch (this) {
case east:
return north;
case north:
return west;
case west:
return south;
case south:
return east;
}
return null;
}
}
使用aioobe在枚举本身上放置next()方法的想法,甚至可以为'iterator()'的所有调用返回相同的迭代器实例。 –
...这是多一点线程安全。 – dacwe
糟糕,你是对的。我还没有足够的咖啡 - 这些信息与调用者有关,而不是迭代器。所以每个调用者都有自己的迭代器。 –