【Golang基本语法】介绍

Golang基本语法

Golang(通常称为Go)是一种由Google开发的静态类型、编译型语言,它具有简洁、高效和易于维护等特点,Go的设计哲学旨在简化编程任务,并提供快速的编译时间和高效的执行性能。下面是一些Go语言的基本语法要点:

  1. 包声明:每个Go文件都以包声明开始,定义当前文件属于哪个包。

    go 复制代码
    package main
  2. 引入包 :使用import关键字导入依赖。

    go 复制代码
    import "fmt"
  3. 函数 :使用func关键字定义函数。

    go 复制代码
    func main() {
        fmt.Println("Hello, World!")
    }
  4. 变量 :使用var关键字定义变量,Go也支持类型推断。

    go 复制代码
    var name string = "John"
    age := 30  // 类型推断
  5. 常量 :使用const关键字定义常量。

    go 复制代码
    const Pi = 3.14
  6. 基本数据类型 :Go有基本的数据类型比如intfloat64boolstring等。

  7. 控制结构

    • If/else 条件语句:

      go 复制代码
      if condition1 {
          // 条件1为真时执行
      } else if condition2 {
          // 条件2为真时执行
      } else {
          // 条件1和条件2都不为真时执行
      }
    • For 循环:

      go 复制代码
      for initializer; condition; post {
          // 循环体
      }
      
      // 或者范围循环
      for key, value := range mymap {
          fmt.Println(key, value)
      }
    • Switch 语句:

      go 复制代码
      switch variable {
      case value1:
          // 当variable == value1时执行
      case value2:
          // 当variable == value2时执行
      default:
          // 其它情况时执行
      }
  8. 数组和切片

    • 数组定义

      go 复制代码
      var a [5]int // 定义一个包含5个整数的数组
    • 切片定义

      go 复制代码
      s := []int{1, 2, 3} // 定义一个整数切片
  9. 映射(字典):

    go 复制代码
    m := make(map[string]int)
    m["key"] = 42
  10. 结构体

    go 复制代码
    type Person struct {
        Name string
        Age  int
    }
    
    var p Person
    p.Name = "Alice"
    p.Age = 30
  11. 接口

    go 复制代码
    type Shape interface {
        Area() float64
    }
    
    type Circle struct {
        radius float64
    }
    
    func (c Circle) Area() float64 {
        return math.Pi * c.radius * c.radius
    }
  12. 并发

    • Goroutines

      go 复制代码
      go func() {
          fmt.Println("Running in a goroutine")
      }()
    • Channels

      go 复制代码
      ch := make(chan int)
      go func() {
          ch <- 123  // 将数值发送到channel
      }()
      val := <-ch  // 从channel接收数值

这只是Golang基本语法的一个快速概述,Go非常注重实践,推荐你通过编写实际的程序来进一步学习,你可以访问官方文档The Go Programming Language或使用在线资源例如 Go by Example 来了解更多。

相关推荐
炸膛坦客7 分钟前
C++ 学习与 CLion 使用:(四)常量和变量,包括字面常量和符号常量
开发语言·c++·学习
java1234_小锋37 分钟前
说说你对Integer缓存的理解?
java·开发语言
至此流年莫相忘1 小时前
TypeReference 泛型的使用场景及具体使用流程
java·开发语言·spring boot
windSnowLi1 小时前
Python opencv识别图片中重叠圆的圆心位置
开发语言·python·opencv
zh_xuan1 小时前
LeeCode 40.组合总和II
c语言·数据结构·算法
都叫我大帅哥2 小时前
动态规划:从懵逼到装逼,一篇让你彻底搞懂DP的终极指南
java·算法
艾莉丝努力练剑3 小时前
《递归与迭代:从斐波那契到汉诺塔的算法精髓》
c语言·学习·算法
王廷胡_白嫖帝3 小时前
Qt网络速度测试工具开发教程 - 从零开始构建网络测速应用
开发语言·网络·qt
夏婵语冰5 小时前
实用R语言机器学习指南:从数据预处理到模型实战(附配套学习资源)
开发语言·学习·r语言
牛角上的男孩7 小时前
apt update Ign and 404 Not Found
开发语言·数据库