概述

条件语句需要开发者通过指定一个或多个条件
并通过测试条件是否为 true 来决定是否执行指定语句
并在条件为 false 的情况再执行另外的语句。

语法

package main
	
func main() {
	  
	  //第一种格式
	   if  条件表达式 {
	   		语句1
	   }
	   
	   //第二种格式
	   if 初始化表达式; 条件表达式 {
	   		语句1
	   }
	   
	   //第三种格式
	   if 初始化表达式; 条件表达式 {
	     	语句1
	   }else{
	   	 	语句2
	   }
	   
	   //第四种格式
	   if 初始化表达式; 条件表达式 {
	    	语句1
	   }else if 初始化表达式; 条件表达式 {
	   	 	语句2
	    }else{
	    	语句3
	   }
	}

格式规则

1)Go语言中条件语句不需要圆括号,但是分支中必须有大括号。

2)Go语言条件语句中可以用 := 初始化一个变量,不过需要记住,这个变量是局部变量,该变量的作用域仅在if范围之内。

3)Go语言里面对 if/else 格式对齐要求很严格,如果需要 if/else 组合,则需要在if语句结束的大括号后面就跟上else。
这里写上代码

4)关键字 if 和 else 之后的左大括号 { 必须和关键字在同一行,如果你使用了 else-if 结构,则前段代码块的右大括号 } 必须和 else-if 关键字在同一行。这两条规则都是被编译器强制规定的。

示例代码
 

package main

import (
	"fmt"
	"io/ioutil"  //一定要导入包
)

func main() {

	age := 10

	//1. 第一种表达式  if
	if age > 10 { //其他的语言有括号,这里没有括号,如果你加上了括号,go fmt还是会删除你的括号
		fmt.Println("age大于10")
	}

	//2. 第二种表达式  if else
	if age > 20 {
		fmt.Println("age大于20")
	} else {
		fmt.Println("age小于20")
	}

	//3. 第三种表达式 if-else if
	if age == 20 {
		fmt.Println("age等于20")
	} else if age > 20 {
		fmt.Println("age大于20")
	} else {
		fmt.Println("age小于20")

	}

	//4. 第四种格式 初始化表达式; 条件表达式
	if i := 20; i == 10 {
		fmt.Println("i等于10")
	} else {
		fmt.Println("i不等于10")
	}

	//读取文件 ioutil是个go自带的包,ReadFile首字母大小表示是公有的方法,nil表示是否为空,不为空是表示表示打开文件失败
	// 一定要导入 io/ioutil
	// 必须在当前目录下创建abc.txt文件
	if response, err := ioutil.ReadFile("abc.txt"); err != nil {
		fmt.Println(err)
	} else {
		fmt.Println(string(response))
	}

}

 

智一面王老师说运维推荐初级Golang开发工程师在线评测:http://www.gtalent.cn/exam/interview/FM2N7xj54dQBPfUE

王老师说运维之go语言菜鸟入门:http://www.codeforest.cn/course/474