
- Go - Home
- Go - Overview
- Go - Environment Setup
- Go - Program Structure
- Go - Basic Syntax
- Go - Data Types
- Go - Variables
- Go - Constants
- Go - Identifiers
- Go - Keywords
- Go - Operators
- Go - Arithmetic Operators
- Go - Assignment Operators
- Go - Relational Operators
- Go - Logical Operators
- Go - Bitwise Operators
- Go - Miscellaneous Operators
- Go - Operators Precedence
- Go Decision Making
- Go - Decision Making
- Go - If Statement
- Go - If Else Statement
- Go - Nested If Statements
- Go - Switch Statement
- Go - Select Statement
- Go Control Flow Statements
- Go - For Loop
- Go - Nested for Loops
- Go - Break Statement
- Go - Continue Statement
- Go - Goto Statement
- Go Functions
- Go - Functions
- Go - Call by Value
- Go - Call by Reference
- Go - Functions as Values
- Go - Function Closure
- Go - Function Method
- Go - Anonymous function
- Go Strings
- Go - Strings
- Go - String Length
- Go - String Concatenation
- Go - Compare Strings
- Go - Split String
- Go - Substring Extraction
- Go - String Replacement
- Go - String Interpolation
- Go - Parse Date Strings
- Go Arrays
- Go - Arrays
- Go - Multidimensional Arrays
- Go - Multidimensional Arrays
- Go - Passing Arrays to Functions
- Go - Pointers
- Go - Pointers
- Go - Array of pointers
- Go - Pointer to pointer
- Go - Passing pointers to functions
- Go Advanced Control Structures
- Go - Scope Rules
- Go - Dereferencing Pointer
- Go - Structures
- Go - Slice
- Go - Slice of Slices
- Go - Range
- Go - Maps
- Go - Recursion
- Go - Type Casting
- Go - Interfaces
- Go - Type Assertion
- Go - Error Handling
- Go - Concurrency
- Go - Regular Expression
- Go - Inheritance
- Go - Packages
- Go - Templates
- Go - Reflection
- Go - Generics
- Go File Handling
- Go - Read File By Word
- Go - Read File By Line
- Go - Read CSV Files
- Go - Delete File
- Go - Rename & Move File
- Go - Truncate a File
- Go - File Read-Write Mode W/O Truncation
- Go Miscellaneous
- Go - defer Keyword
- Go - Fmt Package
- Go - Zero Value
- Go - Import
Go - if statement
The if Statement
Go if statement consists of a boolean expression followed by one or more statements. It checks whether the given Boolean expression is true or not. If it is true, the associate statements execute.
Syntax
The syntax of an if statement in Go programming language is −
if(boolean_expression) { /* statement(s) will execute if the boolean expression is true */ }
If the boolean expression evaluates to true, then the block of code inside the if statement is executed. If boolean expression evaluates to false, then the first set of code after the end of the if statement (after the closing curly brace) is executed.
Flow Diagram

Example
This example demonstrates how to use an if statement in Go to check a condition and execute a block of code when the condition is true.
package main import "fmt" func main() { /* local variable definition */ var a int = 10 /* check the boolean condition using if statement */ if( a < 20 ) { /* if condition is true then print the following */ fmt.Printf("a is less than 20\n" ) } fmt.Printf("value of a is : %d\n", a) }
When the above code is compiled and executed, it produces the following result −
a is less than 20; value of a is : 10
Example
In the following example, we are checking if a number is positive, negative, or zero using only if statements:
package main import "fmt" func main() { var num int num = -10 if num > 0 { fmt.Println("The number is positive.") } if num < 0 { fmt.Println("The number is negative.") } if num == 0 { fmt.Println("The number is zero.") } }
When the above code is compiled and executed, it produces the following result −
The number is negative.