Mã java sau thực hiện mà không có lỗi trong Java 1,7Cách khai báo phạm vi java trong câu lệnh case switch?
public static void main(String[] args) {
int x = 5;
switch(x) {
case 4:
int y = 3423432;
break;
case 5: {
y = 33;
}
}
}
như thế nào java hình ra y đó là một int kể từ khi tuyên bố không bao giờ được chạy. Liệu việc khai báo các biến trong một câu lệnh case có được phạm vi đến mức câu lệnh switch khi các dấu ngoặc không được sử dụng trong một câu lệnh case?
Tôi tin rằng biến được khai báo trong phạm vi toàn bộ chuyển đổi và không chỉ là trường hợp. Tôi không chắc chắn về nó nhưng tôi nghĩ đó là những gì đang xảy ra. – StackFlowed
câu hỏi tương tự cũng được đưa ra trước đây: http://stackoverflow.com/questions/10810768/declaring-and-initializing-variables-within-java-switches – DonatasD
hy vọng liên kết này sẽ trả lời cho câu hỏi của bạn http://stackoverflow.com/questions/3894119/variables-scope-in-a-switch-case –