关于 Java switch 语句 - 在每种情况下使用返回和省略中断
鉴于这种方法,这是否代表了一些令人震惊的文体或语义失礼:
Given this method, does this represent some egregious stylistic or semantic faux pas:
private double translateSlider(int sliderVal) {
switch (sliderVal) {
case 0:
return 1.0;
case 1:
return .9;
case 2:
return .8;
case 3:
return .7;
case 4:
return .6;
default:
return 1.0;
}
}
这显然不符合 此处的 Java 教程.
It's clearly not in line with the Java tutorials here.
但是,它清晰、简洁,到目前为止已经完全满足了我的需求.是否有一个令人信服的、务实的理由来创建一个局部变量,在每个案例中为其分配一个值,为每个案例添加一个中断并在方法结束时返回值?
However, It's clear, concise and so far has yielded exactly what I need. Is there a compelling, pragmatic reason to create a local variable, assign a value to it within each case, add a break to each case and return the value at the end of the method?
推荐答案
将值分配给局部变量,然后在最后返回该值被认为是一种好习惯.具有多个出口的方法更难调试并且可以难以阅读.
Assigning a value to a local variable and then returning that at the end is considered a good practice. Methods having multiple exits are harder to debug and can be difficult to read.
也就是说,这是这个范式剩下的唯一优点.它起源于只有低级程序语言出现的时候.在那个时候它更有意义.
That said, thats the only plus point left to this paradigm. It was originated when only low-level procedural languages were around. And it made much more sense at that time.
当我们讨论这个主题时,您必须 看看这个.读起来很有趣.
While we are on the topic you must check this out. Its an interesting read.
相关文章