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

相关推荐
presenttttt17 分钟前
用Python和OpenCV从零搭建一个完整的双目视觉系统(四)
开发语言·python·opencv·计算机视觉
yi.Ist22 分钟前
数据结构 —— 键值对 map
数据结构·算法
每日出拳老爷子23 分钟前
[C#] 使用TextBox换行失败的原因与解决方案:换用RichTextBox的实战经验
开发语言·c#
s1533525 分钟前
数据结构-顺序表-猜数字
数据结构·算法·leetcode
半桔26 分钟前
【Linux手册】从接口到管理:Linux文件系统的核心操作指南
android·java·linux·开发语言·面试·系统架构
Coding小公仔28 分钟前
LeetCode 8. 字符串转换整数 (atoi)
算法·leetcode·职场和发展
GEEK零零七34 分钟前
Leetcode 393. UTF-8 编码验证
算法·leetcode·职场和发展·二进制运算
nightunderblackcat35 分钟前
新手向:实现ATM模拟系统
java·开发语言·spring boot·spring cloud·tomcat·maven·intellij-idea
开开心心就好37 分钟前
电脑息屏工具,一键黑屏超方便
开发语言·javascript·电脑·scala·erlang·perl
笑衬人心。1 小时前
Java 17 新特性笔记
java·开发语言·笔记