Go语言入门2(流程控制,string)

打印 上一主题 下一主题

主题 968|帖子 968|积分 2904

流程控制

选择结构(分支语句)

​        因为switch只能匹配固定值,推荐使用if-else做条件筛选
if-else判断
  1. package main
  2. import "fmt"
  3. func main() {
  4.         var tmpA int
  5.         fmt.Scanln(&tmpA)
  6.         if tmpA >= 90 {
  7.                 fmt.Println("tmpA >= 90")
  8.         } else if tmpA < 90 && tmpA >= 60 {
  9.                 fmt.Println("tmpA < 90 && tmpA >= 60")
  10.         } else {
  11.                 fmt.Println("tmpA < 60")
  12.         }
  13. }
复制代码
switch判断

​        switch语句执行的过程从上至下,知道找到匹配项,匹配项后面也不需要再加break,case之后默认添加break
  1. package main
  2. import "fmt"
  3. // switch 后面如果什么都不跟,就会默认为bool类型,值为true
  4. func main() {
  5.         var tmpA int
  6.         fmt.Scanln(&tmpA)
  7.         switch tmpA {
  8.         case 90:
  9.                 fmt.Println("tmpA = 90")
  10.         case 80:
  11.                 fmt.Println("tmpA = 80")
  12.         default:
  13.                 fmt.Println("default")
  14.         }
  15. }
复制代码
fallthrough穿透(和break相反)

​        switch默认情况下匹配成功后就不会执行其他case,如果我们需要执行后面的case,可以使用fall through穿透实现,它会强制执行后面的语句,并不会判断后面case表达式是否匹配
  1. package main
  2. import "fmt"
  3. func main() {
  4.         var tmpA int
  5.         fmt.Scanln(&tmpA)
  6.         switch tmpA {
  7.         case 90:
  8.                 fmt.Println("tmpA = 90")
  9.                 fallthrough
  10.         case 80:
  11.                 fmt.Println("tmpA = 80")
  12.                 fallthrough
  13.         default:
  14.                 fmt.Println("default")
  15.         }
  16. }
复制代码
循环结构(for循环)
  1. package main
  2. import "fmt"
  3. func main() {
  4.     // 循环的条件判断没有括号,同样break和continue使用同c语言一样
  5.         for i := 0; i < 10; i++ {
  6.                 if i == 4 {
  7.                         continue // 结束当前循环
  8.                 } else if i == 6 {
  9.                         break    // 结束整个循环
  10.                 }
  11.                 fmt.Print(i)
  12.         }
  13. }
复制代码
string

​        go语言中的字符串是一个字节的切片,可以通过将其内容封装在“”中来创建字符串,go语言中字符串编码兼容Unicode,且使用UTF-8编码,是一些字节的集合
  1. package main
  2. import "fmt"
  3. func main() {
  4.         // string 是不能被单独修改里面的某一位的
  5.         str := "string example"
  6.         fmt.Println(str)
  7.         // 获取字符串长度
  8.         fmt.Println("字符串长度为: ", len(str))
  9.         // 获取指定的字节(直接获得的是Ascll编码)
  10.         fmt.Println("获取指定的字节:", str[2])
  11.         // 格式化输出指定字节
  12.         fmt.Printf("获取指定的字节: %c \n", str[2])
  13.         // 使用for循环遍历字符串
  14.         for i := 0; i < len(str); i++ {
  15.                 fmt.Printf("遍历字符串: %c\n", str[i])
  16.         }
  17.         // for range循环,用于遍历数组以及切片....
  18.         // i:字符串下标
  19.         // v:当前下表对应的值,可以直接使用
  20.         for i, v := range str {
  21.                 fmt.Printf("i = %d,v = %c \n", i, v)
  22.         }
  23. }
复制代码
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!
回复

使用道具 举报

0 个回复

倒序浏览

快速回复

您需要登录后才可以回帖 登录 or 立即注册

本版积分规则

海哥

金牌会员
这个人很懒什么都没写!
快速回复 返回顶部 返回列表