1. ホーム
  2. java

[解決済み] Java の中括弧はそれ自体で何を意味するのか?

2023-07-30 10:58:44

質問

中括弧を2つの方法で使用するJavaコードがあります。

// Curly braces attached to an 'if' statement:
if(node.getId() != null)
{
    node.getId().apply(this);
}

// Curly braces by themselves:
{
    List<PExp> copy = new ArrayList<PExp>(node.getArgs());
    for(PExp e : copy)
    {
        e.apply(this);
    }
}
outAMethodExp(node);

の後の独立した中括弧は何を意味するのでしょうか? if 文の後にある独立した中括弧は何を意味するのでしょうか?

どのように解決するのですか?

余分な中括弧の唯一の目的は、スコープ制限を提供することです。そのため List<PExp> copy はこれらの中括弧の中にのみ存在し、中括弧の外には何の範囲も持ちません。

これが生成されたコードである場合、私はコードジェネレータがこれを行うことで、(このような)いくつかのコードを、何回 List<PExp> copy を何回挿入したかを気にすることなく、また、このスニペットが同じメソッドに複数回挿入された場合、おそらく変数の名前を変更することを心配することなく、いくつかのコード (このような) を挿入できるようにするためと仮定します。