if控制语句

说明:(1)if后面的条件语句不用加括号

(2)if后面可以跟一个简单的初始化语句,并以分号分割,初始化语句中的变量的作用域是整个if语句块

(3)if语句的条件语句需要尽量简单

(4)go语言没有条件运算语句(例如,a>b?1:0)

package main

import (
"fmt"
) func main() { b := 10
if a := 10; a < b {
fmt.Println("a < b")
} else if a == b {
fmt.Println("a == b")
} else {
fmt.Println("a > b")
}
}

switch控制语句

fallthrough的作用:不再判断下一个case(注意是下一个,不是下面所有的case子句)

package main

import "fmt"

func main() {

	switch letter := 'y'; letter {
	case 'y', 'Y':
		fmt.Println("yes")
		fallthrough
	case 'n', 'N':
		fmt.Println("no")
	case 'a', 'A':
		fmt.Println("all")
	}
}

 

运行结果

package main

import "fmt"

func main() {

	switch letter := 'y'; letter {
case 'y', 'Y':
fmt.Println("yes")
fallthrough
case 'n', 'N':
fmt.Println("no")
case 'a', 'A':
fmt.Println("all")
}
}

  

switch语句中,default可以放在任意位置,不影响处理逻辑

举例

	switch letter := 'h'; letter {
default:
fmt.Println("default")
case 'y', 'Y':
fmt.Println("yes")
fallthrough
case 'n', 'N':
fmt.Println("no")
case 'a', 'A':
fmt.Println("all")
}

运行结果

default
成功: 进程退出代码 0.

  

for循环控制语句

go语言中只有1种循环,那就是for

// 数组类型控制的for循环
func for_array() {
arr := [4]int{1, 2, 3}
for idx := range arr {
fmt.Println(arr[idx])
}
}

  

//切片类型控制的for循环
func for_slice() {
arr := [...]int{1, 2, 3, 4, 5, 6}
sli := arr[4:]
for idx := range sli {
fmt.Println(sli[idx])
}
}

 

// make切片控制的for循环
func for_slice2() {
sli := make([]int, 3)
sli[0] = 1
sli[1] = 2
for idx := range sli {
fmt.Println(sli[idx])
}
} 运行结果:

1

2

0

成功: 进程退出代码 0.

// map控制的for循环
func for_map() {
student_list := map[string]int{"name_a": 1, "name_b": 2, "name_c": 3} for k, _ := range student_list {
fmt.Println(k)
}
for _, v := range student_list {
fmt.Println(v)
}
for k, v := range student_list {
fmt.Println(k, v)
}
}

  

go基础_控制语句的更多相关文章

  1. [.net 面向对象编程基础] (7) 基础中的基础——流程控制语句

    [.net 面向对象编程基础] (7) 基础中的基础——流程控制语句 本来没有这一节的内容,后来考虑到既然是一个系列文章,那么就尽可能写的详细一些,本节参考了网上朋友所写的例子,为的是让更多小伙伴学习 ...

  2. 算法基础_递归_求杨辉三角第m行第n个数字

    问题描述: 算法基础_递归_求杨辉三角第m行第n个数字(m,n都从0开始) 解题源代码(这里打印出的是杨辉三角某一层的所有数字,没用大数,所以有上限,这里只写基本逻辑,要符合题意的话,把循环去掉就好) ...

  3. Flutter实战视频-移动电商-05.Dio基础_引入和简单的Get请求

    05.Dio基础_引入和简单的Get请求 博客地址: https://jspang.com/post/FlutterShop.html#toc-4c7 第三方的http请求库叫做Dio https:/ ...

  4. Flutter实战视频-移动电商-08.Dio基础_伪造请求头获取数据

    08.Dio基础_伪造请求头获取数据 上节课代码清楚 重新编写HomePage这个动态组件 开始写请求的方法 请求数据 .但是由于我们没加请求的头 所以没有返回数据 451就是表示请求错错误 创建请求 ...

  5. [Zlib]_[0基础]_[使用zlib库压缩文件]

    场景: 1. WIndows上没找到系统提供的win32 api来生成zip压缩文件, 有知道的大牛麻烦留个言. 2. zlib比較经常使用,编译也方便,使用它来做压缩吧. MacOSX平台默认支持z ...

  6. python基础_格式化输出(%用法和format用法)(转载)

    python基础_格式化输出(%用法和format用法) 目录 %用法 format用法 %用法 1.整数的输出 %o -- oct 八进制%d -- dec 十进制%x -- hex 十六进制 &g ...

  7. java基础之 控制语句

    java基础之控制语句 在java中控制语句包括: if-else语句 swicth-case 语句 while循环 do-while循环 for循环 break语句 continue语句 其中:if ...

  8. JS基础_流程控制语句

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  9. 二、java基础-运算符_控制语句_break_continue_return

    1.运算符 1)算术运算符:6个+ — * \ % ++  --2)关系运算符:6个>  >=  <  <=   ==   !=3)布尔运算符&&并且  ||或 ...

随机推荐

  1. ORA-12638: 身份证明检索失败

    PLSQL 连接Oracle时提示 “ORA-12638: 身份证明检索失败” 错误, 但是开发IDE可以正常连接,DataGrid 可以正常连接,所以确定是本地设置问题. 网上搜了一下,说是因为Or ...

  2. Maven无法下载com.oracle:ojdbc14:jar解决方法

    问题说明:导入Maven项目时,想要添加Oracle驱动包时,Maven的pom.xml总是报Missing artifact com.oracle:ojdbc14:jar:10.2.0.1.0错. ...

  3. Java-杨辉三角(YangHuiTriangle)

    杨辉三角,是二项式系数在三角形中的一种几何排列. 杨辉三角概述 ☃ 每行端点与结尾的数为1 ☃ 每个数等于它上方两数之和 ☃ 每行数字左右对称,由1开始逐渐变大 ☃ 第n行的数字有n项 ☃ 前n行共[ ...

  4. 登录时 按Enter 进入登录界面 或者下一行

    function keyLogin() { if (event.keyCode == 13) //回车键的键值为13 $(".btn-submit").click(); //调用登 ...

  5. QT版本

    最近在linux下安装qt:发现主要的问题是qt的版本问题:下面来谈谈各个版本的理解 Qt 的版本是按照不同的图形系统来划分的,目前分为五个版本: Win: 适用于Miccrosoft Windows ...

  6. 学习 Rust cookbook 之算法篇(algorithm)

    原文作者:suhanyujie 永久链接:https://github.com/suhanyujie/rust-cookbook-note 博客链接:https://ishenghuo.cnblogs ...

  7. AcWing 1022. 宠物小精灵之收服 二维费用背包

    #include<iostream> using namespace std ; ; int f[N][N]; int V1,V2,n; int main() { cin>>V ...

  8. [BJOI2012]连连看

    Description Luogu4134 Solution \(l,r \le 1000\),暴力枚举是否能匹配.这是一个选匹配的问题,所以直接网络流,原图不一定是二分图咋办?拆点啊!然后直接做就行 ...

  9. python定义一种新类型的元组

    # 定义一种新类型的元组,只保留int类型,切只大于0的元素 # 例如:IntTuple([1,-1,"abc",6,['x','y'],3])==>(1,6,3) # 解决 ...

  10. 变色html css js

    <!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title> ...