go语言学习

[GO语言基础] 一.为什么我要学习Golang以及GO语言入门普及_golang语言-CSDN博客

快速上手:【狂神说】Go语言零基础学习视频通俗易懂_哔哩哔哩_bilibili

全部基础知识:Go语言(golang)教程全套,

GO=C语言 + python

编程环境:

Go下载 - Go语言中文网 - Golang中文社区 (studygolang.com)

下载安装,添加环境变量:

GOROOT C:\Software\go

GOPATH D:\Goproject

开发工具:

可以下载GOLand(试用30天) ,idea (go插件), 建议使用vscode(安装go插件)

优化Go环境设置:

go env -w GO111MODULE=on

go env -w GOPROXY=https://proxy.golang.com.cn,direct

记得重启VSCode!

安装Go语言工具:

在VScode中的命令面板输入 >go:install  ,选择Go:Install/Update Tools这个命令执行

安装Code Runner插件:安装后点击代码的右上角的运行按钮运行。

在项目中初始化Go模块

go mod init project_name

运行 go mod tidy  自动下载并同步项目所需的依赖包

可选择下载需要的模块: go get -u -v 

go build test.go  编译成可执行文件

go run  test.go  直接运行

工程管理

工作区里有src(存放所有源码)  pkg (安装的库), bin(可执行文件)

要把工作区的路径添加到GOPATH环境变量,设置系统环境变量GOBIN  /工作区/bin后,使用go install命令就可以自动生成bin,pkg目录

基础

注释 ://  /* */
支持字符串格式化和转义字符 "%T %d %f %s"
可以自增 i++

和python相似,支持直接交换  b,a=a,b  支持匿名变量  _,a=test() 
求长度:len(str)

--------------------------------------------------------------------------
代码中命名:以一个大写字母开头命名的话就是公有的,当外部包导入代码时就可以使用
包名:小写,不要用_,与目录
GO语言的每个代码文件要指定属于哪个包, 如 package main

Print输出 Printf格式化输出  Println输出并换行
Scan输入  Scanf格式化输入   Scanln

声明变量
int float64 string(不可修改)  bool  byte(字符类型)  array
var 名称 类型=赋值   如,var name string="go"  类型放后面,与其他语言不同,优势:var a,b,c int 多定义少写
var (
string  默认空
int  默认0
float64    默认0.0
bool   默认false
其他默认 nil
)
自动推导类型定义:  name :="go"
声明常量: const age int =6  特殊常量: iota
没有隐式转换,只有强制转换 int(a)

选择结构,循环结构:
if switch for 都不需要小括号,其他和C语言一样
支持用法for each:
for i :=range str{}

函数写法:
func 名称(参数1 类型1,)(返回值类型1,){}  只有一个返回值不用写第二个括号,可以返回多个值
调用 a :=test()
可变参数: func name(arg ...int) 说明参数类型是int ,传多个值进来赋给arg, arg[i]访问

defer关键字,修饰函数后可以最后才执行,多个defer会把函数放到栈里

匿名函数   func(){}
回调函数  一个函数作为另一个函数的参数

闭包:内部函数对外部函数变量的引用

---------------------------------------------------------------------------
指针: var p *int  go语言指针不支持->访问,用点
动态申请内存:p=new(int)  会自动回收

数组:
定义:  var a [n]int              name := [3]int{1,2,3}
for i,data :=range a{}
二维数组:vat a [3][4]int
切片:(动态数组,可扩容)
var a []int             a :=[]int{1,2,3}
切片直接取 a[low:hight:max]
append函数,copy函数

浅拷贝(拷贝值),深拷贝(拷贝地址)
数组传参是浅拷贝,切片传参是深拷贝

字典:每个键和值的类型要一致
 var name map[int]string        dic :=make(map[int]string) 

结构体:

面向对象编程:

异常处理:

并发编程:

网络编程:

 进阶:

看遇见狂神说的项目实战视频

遇见狂神说的个人空间-遇见狂神说个人主页-哔哩哔哩视频

未完待续......

  • 5
    点赞
  • 11
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)JAVA小区物业管理系统(源代码+论文)

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

IT小艺

如果文章对你有用,请我喝咖啡吧

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值