我想知道是否有一种方法可以通过java中的switch/case操作符在每一段的末尾执行一个过程(以环路中的开关为例)
类似这样的“after”操作符(它执行:
switch (constant) {
case a: return "x";
case b: return "y";
case c: return "z";
default: return "unknown";
after: alwayPassInThisMethodAfterBreakStatement()
}
由于“return”操作,我不能简单地在switch case语句之后编写操作,并且由于上下文的原因,我不能使用“break”操作而不是“return”。
2条答案
按热度按时间lmyy7pcs1#
switch case语句中没有after或finally。你可以构建一个if-else,比如:
但这毫无意义。你可以把这个方法放在你的switch case之后或者你返回的任何地方,这样它就会一直被执行。
ryhaxcpt2#
您可以使用try finally来保证after方法被调用,这样可以避免每个分支重复调用。例子: