🔁 Go If Statement – Write Conditional Logic in Go (2025 Guide)
🧲 Introduction – Why Use If Statements in Go?
The if statement in Go allows you to execute blocks of code conditionally—based on whether a boolean expression is true or false. It’s a foundational control structure used in decisions, validation, loops, and error handling.
🎯 In this section, you’ll learn:
- The basic syntax of
if,if-else, andif-else if - How to use inline variable declarations
- Best practices for writing clean conditional logic
- Real-world usage examples
✅ Basic Syntax – Go If Statement
if condition {
// code block executes if condition is true
}
Example:
x := 10
if x > 5 {
fmt.Println("x is greater than 5")
}
📤 Output:
x is greater than 5
🔀 If-Else Statement
Use else to handle the case when the if condition is false.
x := 3
if x > 5 {
fmt.Println("x is large")
} else {
fmt.Println("x is small")
}
📤 Output:
x is small
🔁 If-Else If-Else Ladder
Check multiple conditions in sequence:
score := 85
if score >= 90 {
fmt.Println("Grade: A")
} else if score >= 75 {
fmt.Println("Grade: B")
} else {
fmt.Println("Grade: C")
}
📤 Output:
Grade: B
🧪 Inline Variable Declaration in If
You can declare and use a variable directly inside the if condition:
if age := 18; age >= 18 {
fmt.Println("Eligible")
} else {
fmt.Println("Not eligible")
}
✅ age exists only within the if–else block.
🛑 Common Mistakes
| Mistake | Fix |
|---|---|
Omitting braces {} | Go requires braces |
Using if (x > 5) like C | ❌ No parentheses in Go |
| Declaring var outside scope | Use inline declaration |
❌ Invalid:
if (x > 5) { // ⛔ Parens not allowed
✅ Correct:
if x > 5 {
🧠 Best Practices
✅ Always use braces {} even for one-line blocks
✅ Use short, meaningful condition names
✅ Avoid deeply nested if-else blocks — refactor to improve readability
✅ Use switch when checking multiple discrete values
🧪 Real-World Example – Access Control
user := "admin"
isLoggedIn := true
if user == "admin" && isLoggedIn {
fmt.Println("Access granted")
} else {
fmt.Println("Access denied")
}
📤 Output:
Access granted
📌 Summary – Recap & Next Steps
The if statement in Go is a powerful tool for decision-making. Its clean syntax, support for inline variable declarations, and enforced use of braces make Go’s control flow safe and readable.
🔍 Key Takeaways:
- Use
if,else, andelse iffor conditional logic - Go doesn’t allow parentheses around conditions
- Use inline declaration for scoped variables
- Prefer clarity over complexity in nested conditions
⚙️ Next: Explore Go Switch Statements for multiple value comparisons in a cleaner syntax.
❓ FAQs – Go If Statement
❓ Can I use parentheses in Go if statements like in C?
✅ No. Go does not require or allow parentheses around conditions.
❓ Can I declare a variable in an if statement?
✅ Yes. Use if x := value; x > 0 for scoped variable declaration.
❓ What happens if the if condition is false and there’s no else?
✅ The code block is skipped, and nothing happens.
❓ How do I write an else if in Go?
✅ Use else if on the same line—Go does not support elif or elseif.
❓ Is a ternary operator like x ? y : z available in Go?
✅ No. Go encourages readability with standard if-else blocks instead.
Share Now :
