【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 来了解更多。

相关推荐
罗西的思考5 分钟前
【Agent】MemOS 源码笔记---(5)---记忆分类
人工智能·深度学习·算法
生骨大头菜43 分钟前
使用python实现相似图片搜索功能,并接入springcloud
开发语言·python·spring cloud·微服务
绝不收费—免费看不了了联系我1 小时前
Fastapi的单进程响应问题 和 解决方法
开发语言·后端·python·fastapi
消失的旧时光-19431 小时前
深入理解 Java 线程池(二):ThreadPoolExecutor 执行流程 + 运行状态 + ctl 原理全解析
java·开发语言
咖啡续命又一天1 小时前
Trae CN IDE 中 Python 开发的具体流程和配置总结
开发语言·ide·python·ai编程
4311媒体网1 小时前
帝国cms调用文章内容 二开基本操作
java·开发语言·php
GSDjisidi1 小时前
东京IT软件会社-(株)GSD|多种技术栈募集,高度人才+20分
开发语言·面试·职场和发展
程序员zgh2 小时前
Linux系统常用命令集合
linux·运维·服务器·c语言·开发语言·c++
獭.獭.3 小时前
C++ -- STL【unordered_set与unordered_map的实现】
开发语言·c++·unordered_map·unordered_set
qq_433554543 小时前
C++数位DP
c++·算法·图论