Trong C#, từ khóa goto
được sử dụng để thực hiện một nhảy không điều kiện từ một điểm trong mã đến một nhãn (label) khác trong cùng phạm vi (scope). goto
cho phép bạn thực hiện những nhảy điểm tới một cách tường minh, nhưng nên sử dụng cẩn thận vì nó có thể làm mã trở nên khó đọc và khó bảo trì.
Dưới đây là cú pháp cơ bản của từ khóa goto
:
goto labelName; // ... labelName:
// Câu lệnh(s) để thực hiện
Dưới đây là một ví dụ minh họa về cách sử dụng từ khóa goto
:
using System; class Program
{ static void Main() { int i = 1; start: // Định nghĩa một nhãn (label) tên là 'start' if (i <= 5) { Console.WriteLine(i); i++; goto start; // Nhảy đến nhãn 'start' } Console.WriteLine("Vòng lặp kết thúc."); }
}
Trong ví dụ này:
- Chúng ta định nghĩa một nhãn (label) được đặt tên là
start
sử dụngstart:
trước vòng lặp. - Trong vòng lặp, chúng ta kiểm tra xem giá trị của
i
có nhỏ hơn hoặc bằng 5 không. Nếu điều kiện đúng, chúng ta in giá trị củai
, tăngi
, và sau đó sử dụnggoto start;
để nhảy trở lại nhãnstart
. - Vòng lặp sẽ tiếp tục cho đến khi
i
không còn nhỏ hơn hoặc bằng 5. - Sau khi vòng lặp kết thúc, chúng ta in ra "Vòng lặp kết thúc."
Lưu ý rằng goto
nên được sử dụng một cách cẩn thận và chỉ khi thực sự cần thiết, vì nó có thể làm cho mã trở nên khó hiểu và khó bảo trì. Trong hầu hết các trường hợp, bạn có thể sử dụng các cấu trúc điều khiển (như vòng lặp và câu lệnh điều kiện) để thay thế cho goto
.