2017-04-17 4 views
1

Ist es zulässig, einige geschweifte Klammern ohne irgendwelche if/for/etc-Anweisungen zu platzieren, um den Variablenbereich zu begrenzen?Benutzerdefinierter Variablenbereich

Ein Beispiel:

public void myMethod() 
{ 
    ... 
    { 
     int x; 
     x = 5; 
    } 
    ... 
} 

Ich kann dies tun will, damit ich weiß, sicher werde ich nicht den Zugang/die Variable außerhalb des Bereichs ändern und dass es vorher zerstört wird

+1

Haben Sie es versucht? –

+0

tat ich und es funktionierte, aber ich war mir nicht sicher, ob es erlaubt ist oder nicht. Ich habe auch versucht, das Internet zu durchsuchen und habe nichts über solche Bereiche gefunden. Deshalb habe ich mich entschieden, –

+0

[dieses zu überprüfen] (http://stackoverflow.com/questions/241088/what-do-curly-braces-in-java-mean-by-selbst) –

Antwort

2

Ja , Es ist erlaubt. Versuchen Sie es einfach selbst.

1

Die geschweiften Klammern { .. } begrenzen den Gültigkeitsbereich der Variablen auf den Block.
Es können jedoch Änderungen an globalen Variablen vorgenommen werden, die in den Gültigkeitsbereich { .. } Block fallen.

int x = -1; 
double y = 5; 
{ 
    x = 10; 
    y = 100; 
    char c = 'A'; 
} 
System.out.println(x + " " + y); // 10 100.0 
System.out.println(c); // Compile time error and out of scope 

{ 
    c = 'B'; // Compile time error and out of scope 
} 
Verwandte Themen