Das Muster des endgültigen Arrays anstelle der nicht endgültigen Variablen für das Boolesche Flag in der inneren Klasse

In meinem Java-Code kommt es häufig vor, dass ich in einer inneren Klasse ein Boolesches Flag setzen muss. Es ist nicht möglich, dafür den primitiven booleschen Typ zu verwenden, da die innere Klasse nur mit endgültigen Variablen von außen arbeiten konnte. Daher verwende ich das folgende Muster:

// class from gnu.trove is not of big importance, just to have an example
private final TIntIntHashMap team = new TIntIntHashMap();
// ....... code ............
final boolean[] flag = new boolean[]{false};
team.forEachValue(new TIntProcedure() {
    @Override
    public boolean execute(int score) {
        if(score >= VICTORY_SCORE) {
            flag[0] = true;
        } 
        return true; // to continue iteration over hash map values
    }
});
//  ....... code ..............

Das Muster von final array anstelle von non-final variable funktioniert gut, außer es sieht für mich nicht schön genug aus. Kennt jemand ein besseres Muster in Java?

Antworten auf die Frage(6)

Ihre Antwort auf die Frage