是否存在Java内置构造,​​如vb.net&Do Do Loop?

时间:2016-10-29 12:32:46

标签: java

我试图让我的代码更具可读性,因此使用以下(或等效的)

会很有用
User $user

而不是

do
{
    ...
}
until(Display.isCloseRequested())

但我似乎无法找到类似的东西。

是的,我不喜欢' java惯例'将开括号与句号在同一行上,最后一个语句与结束括号在同一行上。我更喜欢那种代码风格。

2 个答案:

答案 0 :(得分:7)

不,Java没有do-until循环结构或类似结构。只需do-while进行与您在问题中指出的相反的测试forwhile。所有都使用“正面”测试(循环继续,而测试为真)。

JLS中的更多内容:

答案 1 :(得分:1)

如果确实需要until语法,您可以稍作作弊并创建一个否定布尔表达式的until()方法。

例如......

do {
    // something
} while (
    until(Display.isCloseRequested())
);

...

public static boolean until(boolean condition) {
    return !condition;
}

只要您想使用它,就可以静态导入until方法。

虽然这引入了一些问题:

  • 看起来不太漂亮
  • 这是非常规的,可能引起混淆。