go基础入门

  1. go不需要在语句或声明后面使用分号结尾

    • 左括号{必须与关键字func同一行,不能独自成行

    • x+y表达式,换行符可以在+操作符的后面,不能在+操作符的前面

  2. go中索引使用半开区间,左开右闭,包含左边索引元素,不包含右边索引元素。

  3. var关键字用来声明变量,如果没有明确初始化,会隐式的初始化为这个类型的空值。

    // 前两种形式很常用 
    s := "" // :=用于短变量声明
    var s string // 默认初始化为空字符串
    var s = "" // 很少使用
    var s string = "" // 显示的变量类型
    
  4. for是go里面的唯一循环语句。

    // initialization:初始化,在循环开始之前执行
    // condition:布尔表达式,循环迭代开始前判断,false时跳出循环 
    // post:在循环体执行后执行
    for initialization; condition; post {
        
    }
    
    // 传统的无限循环
    for {
        
    }
    
    // 循环遍历slice,range产生一对值,索引以及索引对应的值
    for index, value := range slice {
        
    }
    
    // 循环遍历map
    for key, value := range map {
        
    }
    
  5. switch语句

    // case语句从上到下进行推演,第一个匹配的会被执行,后续匹配不会执行。
    // case语句不会贯穿执行,除非使用fallthrough改写这个行为
    switch 0 {
        case 0:
           fmt.println(0)
        case 1:
           fmt.println(1)
        default:
           fmt.println(-1)
    }
    
    // 执行结果:x>5
    // 无标签选择,它等价于switch true
    // default语句可以放在任何地方
    x := 10
    switch {
    case x > 5:
    	fmt.Println("x>5")
    default:
    	fmt.Println("default")
    case x > 0:
    	fmt.Println("x>0")
    }
    
  6. break和continue语句可以改变控制流。break可以打断for、switch或select的最内层调用。continue可以跳过本次内层循环开始新的迭代。


posted @ 2024-06-01 20:39  卖油条的大叔  阅读(40)  评论(0)    收藏  举报