一起养成写作习惯!这是我参与「掘金日新计划 · 4 月更文挑战」的第1天,点击查看活动详情。
Go学习打卡Day01 变量声明与定义
1、Go项目的目录结构
bin
存放编译后可执行的文件。
pkg
存放编译后的应用包。
src
存放应用源代码。
├─ code -- 代码根目录
│ ├─ bin
│ ├─ pkg
│ ├─ src
│ ├── hello
│ ├── hello.go
2、Hello World代码
package main
import "fmt"
func main() {
fmt.Println("Hello World")
}
//执行代码:go run main.go
3、常用命令
go build hello
在src目录或hello目录下执行 go build hello,只在对应当前目录下生成文件。
go install hello
在src目录或hello目录下执行 go install hello,会把编译好的结果移动到 $GOPATH/bin。
go run hello
在src目录或hello目录下执行 go run hello,不生成任何文件只运行程序。
go fmt hello
在src目录或hello目录下执行 go run hello,格式化代码,将代码修改成标准格式。
4、数据类型
字符串
string
只能用一对双引号("")或反引号(``)括起来定义,不能用单引号('')定义!
布尔
bool
只有 true 和 false,默认为 false。
数字
整型
int8 uint8
int16 uint16
int32 uint32
int64 uint64
int uint,具体长度取决于 CPU 位数。
浮点型
float32 float64
常量用const类型修饰
package main
import "fmt"
func main() {
const name string = "Coke"
fmt.Println(name)
const age = 18
fmt.Println(age)
const name_, age_ = "Coke", 18
fmt.Println(name_, age_)
}
package main
import "fmt"
func main() {
var age int = 18
var age_ = 18
age__ := 18
fmt.Println(age, age_, age__)
var age_1, age_2, age_3 int = 18, 19, 20
fmt.Println(age_1, age_2, age_3)
var name, age_4 = "Coke", 18
fmt.Println(name, age_4)
name_, age_5, ok := "Coke", 18, false
fmt.Println(name_, age_5, ok)
}
4、输出
fmt.Print:输出到控制台
fmt.Println:输出到控制台并换行
fmt.Printf:仅输出格式化的字符串和字符串变量(整型和整型变量不可以)
fmt.Sprintf:格式化并返回一个字符串,不输出。
package main
import (
"fmt"
)
func main() {
fmt.Print("Coke")
fmt.Println()
fmt.Println("Coke")
fmt.Printf("name=%s,age=%d\n", "Coke", 18)
fmt.Printf("name=%s,age=%d,score=%v\n", "Tom", 18, fmt.Sprintf("%.2f", 93.567))
}