Ich habe Java-Code, der geschweifte Klammern auf zwei Arten verwendet
// 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);
Was bedeuten diese eigenständigen geschweiften Klammern nach der ersten if
Aussage?
copy
dass Müll vor deroutAMethodExp()
Rückgabe gesammelt werden kann . Wenn dies ein lang andauernder oder speicherintensiver Anruf ist, kann dies hilfreich sein. Ich habe "Vorteil" in Anführungszeichen gesetzt, weil das Refactoring in separate Methoden im Allgemeinen viel sauberer und klarer ist, als diese Syntax zu nutzen.