一Go环境安装部署
中文go文档及安装包下载地址: https://studygolang.com/dl
#windows安装下载软件包 next 安装完成
使用MSI文件并按照提示安装Go工具。 默认情况下,安装程序使用C:Go
目录。安装程序应该在窗口的PATH环境变量中设置C:Goin
目录。重新启动后,打开的命令提示验证更改是否生效。
验证安装结果
在F:workspgolang
中创建一个test.go
的go文件。编写并保存以下代码到test.go
文件中。
package main
import "fmt"
func main() {
fmt.Println("Hello, World!")
}
#Linux 中采用二进制方式 下载安装包 解压 添加环境变量
wget https://studygolang.com/dl/golang/go1.10.3.linux-amd64.tar.gz
tar xf go1.10.3.linux-amd64.tar.gz
export PATH=$PATH:/usr/local/go/bin
二:第一个go程序代码
package main import "fmt" func main(){ var name = "egrep" fmt.Printf("hell world welcome learn go %s ",name) }
#以上代码的解释
- 如果是为了将代码编译成一个可执行程序,那么package必须为main 如: 程序的开头 package main
- 如果是为了将代码编译成库,那么package 则没有限制 如: package hello
- go 程序中所有的代码都应该隶属一个包
- fmt 是go中的一个系统库 fmt.Println() 则可以打印输出并且换行 fmt.Print()打印 fmt.Printf() 打印支持格式化输出
- 如果想要运行一个程序命令 go run #先编译后执行
- 在一个可执行的程序程序中只有一个main 函数
- #注释说明
- 单行注释 //
- 多行注释 /* */
#执行的结果如下
d:PROJECT-课下练习srcday01>go build hellworld.go d:PROJECT-课下练习srcday01>hellworld.exe hell world welcome learn go egrep d:PROJECT-课下练习srcday01>go run hellworld.go hell world welcome learn go egrep d:PROJECT-课下练习srcday01>
三 go命令总结
go run 程序名 #先编译后执行 go build #编译源代码为二进制的文件 windows下编译成 程序名.exe Linux下编译成 可执行的文件 go install #将编译的文件放在 /bin/文件目录下 gofmt -w . #将代码格式化 如:以下的代码缩进不是非常的完美,我们可以通过命令gofmt -w . 来进行

四:go语言的变量简单介绍
定义一个变量 关键字 var
var 变量名 变量类型 #如 var name = “egrep” #切记在go里面 双引号里面是字符串类型,单引号是字符类型 它们是有区别的
同时定义一个变量和赋值可以一步完成,通过: 变量名 :=值 #如: name : = "egrep" 也可以是 var name string = "egrep" 或
注意:
go语言里面定义的变量,还是引用的包,都必须被用到,否则会报错,如下演示
package main import "fmt" func main(){ var name = "egrep" fmt.Printf("hell world welcome learn go ") }
#编译执行的时候报错
d:PROJECT-课下练习srcday01>go run hellworld.go
# command-line-arguments
.hellworld.go:6:6: name declared and not used
五、标识符和关键字
单词: identifier 标识符
1、标识符是用来表示Go中的变量名或者函数名,以字母或_开头。后面跟着字母、 _或数字
如:_ab28 和ab_28就是合法的,88ab就是不合法的。
2、关键字是Go语言预先定义好的,有特殊含义的标识符。
六、byte与rune类型
1.byte
与rune
类型有一个共性,即:它们都属于别名类型。byte
是uint8
的别名类型,而rune
则是int32
的别名类型。rune是用来表示utf-8字符
2.byte
类型的值需用8个比特位表示,其表示法与uint8
类型无异。因此我们就不再这里赘述了。我们下面重点说说rune
类型。
一个rune
类型的值即可表示一个Unicode字符。Unicode是一个可以表示世界范围内的绝大部分字符的编码规范。关于它的详细信息,大家可以参看其官网(http://unicode.org/)上的文档,或在Google上搜索。用于代表Unicode字符的编码值也被称为Unicode代码点。一个Unicode代码点通常由“U+”和一个以十六进制表示法表示的整数表示。例如,英文字母“A”的Unicode代码点为“U+0041”。
rune
类型的值需要由单引号“'”包裹。例如,'A'
或'郝'
。这种表示方法一目了然。不过,我们还可以用另外几种形式表示rune
类型值。请看下表。
大家需要根据实际情况选用上述表示法。在一般情况下,第一种表示法更为通用。因为它是最直观的。不过,在以其他几种方法表示的内容出现在屏幕上的时候,大家也要明白其含义。
另外,在rune
类型值的表示中支持几种特殊的字符序列,即:转义符。它们由“”和一个单个英文字符组成。如下表所示。
七:go语言中格式化输出
go语言中支持以下格式输出。
目前printf支持以下格式的输出,例如:
printf("%c",a);输出单个字符。
printf("%d",a);输出十进制整数。
printf("%f",a);输出十进制浮点数.
printf("%o",a);输出八进制数。
printf("%s",a);输出字符串。
printf("%u",a);输出无符号十进制数。
printf("%x",a);输出十六进制数。
printf("%v",a);万能的格式化输出占位符