Go 语言入门指南:基础语法和常用特性解析 | 豆包MarsCode AI刷题

55 阅读3分钟

最初的开始:

一hello,world

后面vscode又出问题了,要检测go的路径是不是正确,需要windows powershell 输入go version,还有vscode的terminal输入go version,才能表明是安装成功。

至于路径,问chatgpt可以手动设置在vscode上的路径。

二/go语言的变量声明

①通过var name string = “”

var a =”initial“

var b =1

声明变量时 会自动去推导变量的类型(这一点不愧是高级语言,没错,c语言在点你),也可以写出变量类型。

var b =1,2

②变量 冒号:=等于值

三/go语言常量声明

把var改成const,c语言中也有这种写法

const s string =”constant”,它没有确定的类型,会根据使用的上下文来自动确定类型。

四/go语言里面的循环

if else

if后无括号把条件罩着,条件后要加大括号

while /do while 循环?

无while 循环,do while循环

只有for循环

switch 分支结构

c语言分支结构

#include <stdio.h>

int main() { int day = 3;

switch (day) {
    case 1:
        printf("星期一\\n");
        break;
    case 2:
        printf("星期二\\n");
        break;
    case 3:
        printf("星期三\\n");
        break;
    case 4:
        printf("星期四\\n");
        break;
    case 5:
        printf("星期五\\n");
        break;
    case 6:
    case 7:
        printf("周末\\n");
        break;
    default:
        printf("无效的输入\\n");
        break;
}
return 0;

}

在 C 语言中,switch 结构的每个 case 后面通常需要加上 break 语句,以避免“贯穿”到下一个 case

golang分支结构

package main

import "fmt"

func main() { day := 3

switch day {
case 1:
    fmt.Println("星期一")
case 2:
    fmt.Println("星期二")
case 3:
    fmt.Println("星期三")
case 4:
    fmt.Println("星期四")
case 5:
    fmt.Println("星期五")
case 6, 7:
    fmt.Println("周末")
default:
    fmt.Println("无效的输入")
}

}

golang不需要分支结构,自动终止

五/go lang 数组

var a [5] int是一个可以存放5个int元素的数组

很少用,一般用切片,因为数组长度固定难以变化

六/切片

切片可以任意更改长度,可用make来创建切片

s := make(【】string,3)\

成功

注意append用法,必须将append的结果赋值为原数组

不支持python拥有的负数指引

七/map

在其他编程语言(比如python),叫做哈希或者字典

map是实际使用过程中最频繁用到的数据结构

创建空map需要两种类型,一个是key,一个是value类型,前者可以是string,后者可以是value

m :=make(map[string]int)

这个make函数用得还挺多

m[”one”]=1

m[”two”]=2

八/range

range用于遍历map slice,range遍历时数组会返回两个值,一个是索引,一个是对应位置的值

九/函数

golang变量类型后置

十/指针

十一/结构体

十二/错误处理

在函数返回值类型里面,加一个error,retrun两个值,出现错误,return error 和一个nil,成功的话返回原本值和nil

十三/字符串操作

标准库中含有许多常见的字符串工具函数,需要可调用

字符串格式化:可以用%v来打印任意类型的变量,不需要区分类型(问:为什么不直接printlin这个f?)\

十四/JSON处理

JSON(JavaScript Object Notation)是一种轻量级的数据交换格式,主要用于在客户端和服务器之间传输数据。它使用一种易于人类阅读和书写的文本格式,同时也便于机器解析和生成。JSON 是一种键值对(key-value)的结构,类似于 Python 的字典或 JavaScript 的对象。

十四/时间处理

Time.now