Đây thực sự là câu trả lời cho nhận xét của seanizer về câu trả lời của org.life.java, nhưng tôi muốn đưa vào một số mã để tôi không thể sử dụng tính năng nhận xét.
Mặc dù rất hiếm khi tôi tìm thấy cách sử dụng cho "nhãn ngắt", thỉnh thoảng điều này xảy ra. Trường hợp phổ biến nhất là khi tôi đang tìm kiếm cái gì đó là trong một cấu trúc đòi hỏi một vòng lặp lồng nhau để tìm kiếm, như:
search:
for (State state : stateList)
{
for (City city : state.cityList)
{
if (city.zipcode.equals(wantZip))
{
doSomethingTo(city);
break search;
}
}
}
Thông thường trong trường hợp này tôi đẩy toàn bộ điều vào một chương trình con để trên một hit tôi có thể trả về đối tượng tìm thấy, và nếu nó rơi ra dưới cùng của vòng lặp, tôi có thể trả về null để chỉ ra một không tìm thấy, hoặc có thể ném một ngoại lệ. Nhưng điều này đôi khi hữu ích.
Thành thật mà nói, tôi nghĩ rằng các nhà phát minh Java bao gồm tính năng này bởi vì giữa việc xử lý này và ngoại lệ, họ đã loại bỏ hai sử dụng hợp pháp cuối cùng cho GOTO.
Phụ lục rất muộn:
Tôi thấy một dòng mã gag tuyệt vời một lần. Lập trình viên đã viết:
http://www.example.com/xyz.jsp
for (Foo foo1 : foolist)
Anh ấy không thực sự nói "example.com" nhưng trang web của công ty chúng tôi.
Nó mang lại ấn tượng rằng có một URL trong mã. Nó biên dịch thành công, giống như nó làm điều gì đó. Nhưng ... nó làm gì?
Thực tế không có gì. "http:" là nhãn mà anh không bao giờ tham chiếu. Sau đó, "//" làm cho phần còn lại của dòng nhận xét.
* Mã này chỉ khiến tôi nhìn chằm chằm vào màn hình của tôi trong một vài phút * - hahahahahahha ... đã ở đó, làm điều đó :) – luigi7up