Theo thử nghiệm Java khoa học của tôi, int x = 0;
tương đương với int x = 0;;
tương đương với int x = 0;;;;;;;;;;;;;;;
Tại sao mã với các dấu chấm phẩy liên tiếp biên dịch?
- Tại sao Java cho phép điều này? Nó có ứng dụng thực tế nào không?
- Mỗi câu trong số này chỉ là các câu lệnh trống? Họ có thực sự mất thêm thời gian xử lý nào trong thời gian chạy không? (Tôi cho rằng chúng chỉ được tối ưu hóa?)
- Các ngôn ngữ khác có làm được điều này không? Tôi đoán đó là một cái gì đó được thừa kế từ C, giống như rất nhiều thứ trong Java. Điều này có đúng không?
Tôi không thể nghĩ ra ngôn ngữ không cho phép báo cáo trống (miễn là có thể viết chúng ở nơi đầu tiên.) – trutheality
@trutheality, Ada không cho phép báo cáo trống. Để chỉ rõ một câu lệnh trống, bạn viết ‘null’. Xem http://archive.adaic.com/standards/83rat/html/ratl-03-07.html để biết ví dụ. –