دستور if
میتوان با استفاده از دستور if و یک شرط خاص که باعث ایجاد یک کد میشود یک منطق به برنامه خود اضافه کنید. دستور if سادهترین دستور شرطی است که برنامه میگوید اگر شرطی برقرار است، کد معینی را انجام بده. ساختار دستور if به صورت زیر است :
if condition { code to execute }
قبل از اجرای دستور if ابتدا شرط بررسی میشود. اگر شرط برقرار باشد یعنی درست باشد سپس کد اجرا میشود. شرط یک عبارت مقایسهای است. میتوان از عملگرهای مقایسهای برای تست درست یا اشتباه بودن شرط استفاده کرد. اجازه بدهید که نگاهی به نحوه استفاده از دستور if در داخل برنامه بیندازیم. برنامه زیر پیغام Hello World را اگر مقدار number کمتر از 10 و Goodbye World را اگر مقدار number از 10 بزرگتر باشد در صفحه نمایش میدهد.
1: package main 2: 3: import "fmt" 4: 5: func main() { 6: //Declare a variable and set it a value less than 10 7: var number int = 5 8: 9: //If the value of number is less than 10 10: if number < 10 { 11: fmt.Println("Hello World.") 12: } 13: 14: //Change the value of a number to a value which is greater than 10 15: number = 15 16: 17: //If the value of number is greater than 10 18: if number > 10 { 19: fmt.Println("Goodbye World.") 20: } 21: }
Hello World. Goodbye World.
در خط 7 یک متغیر با نام number تعریف و مقدار 5 به آن اختصاص داده شده است. وقتی به اولین دستور if در خط 10 میرسیم برنامه تشخیص میدهد که مقدار number از 10 کمتر است یعنی 5 کوچکتر از 10 است.
منطقی است که نتیجه مقایسه درست میباشد. بنابراین دستور if دستور را اجرا میکند (خط 11) و پیغام Hello World چاپ میشود. حال مقدار number را به 15 تغییر میدهیم (خط 15). وقتی به دومین دستور if در خط 18 میرسیم برنامه مقدار number را با 10 مقایسه میکند و چون مقدار number یعنی 15 از 10 بزرگتر است برنامه پیغام Goodbye World را چاپ میکند (خط 19). شما میتوانید چندین دستور را در داخل دستور if بنویسید. کافیست که از یک آکولاد برای نشان دادن ابتدا و انتهای دستورات استفاده کنید. همه دستورات داخل بین آکولاد جز بدنه دستور if هستند. نحوه تعریف چند دستور در داخل بدنه if به صورت زیر است :
if condition {
statement1
statement2
.
.
.
statementN
}
این هم یک مثال ساده :
if x > 10 { fmt.Println("x is greater than 10.") fmt.Println("This is still part of the if statement.") }
در مثال بالا اگر مقدار x از 10 بزرگتر باشد دو پیغام چاپ میشود.