在这边要介绍一下go的基本用法
而这些用法在A Tour of Go也都有介绍
在下面的程序码如果有想测试的,也都可以贴到Go Playground来进行测试喔
但就让我在这边也再次描述一遍吧
在go的程序中,当你执行一个go的档案,他会第一个跑的程序就是main
范例如下
package main
import "fmt"
func main() {
fmt.Println("Hello Main!")
}
func first() {
fmt.Println("Hello First")
}
https://play.golang.org/p/PwgrD2jABVf
他会印出 Hello Main
当你使用程序时,会需要依赖第三方的套件,就会需要使用import来让程序知道你希望call的function要从哪里来
而这些套件有什麽function可以让你使用,可以到
https://pkg.go.dev/std
来查询你想要的功能
在这边以fmt为举例
https://pkg.go.dev/fmt#pkg-index
这边就有列出他可以使用的function
而我们刚刚在上述程序中使用的Println就是其中一个function
在go里面,如果要宣告变数,有几种方法
var x string
x = "Hello World!"
var y string = "Hello World!"
z := "Hello World!"
上述这三种宣告方法出来的内容皆会是一样的
:= 是go的一个特别宣告的方式,就是可以自动将左边的内容变成右边的型态的变数,在这个方式下有几个特别要注意的点
package main
import "fmt"
func swap(x string, y string) (string, string) {
return y, x
}
func main() {
a, b := swap("hello", "world")
fmt.Println(a, b)
}
package main
import "fmt"
func swap(x string, y string) (string, string) {
return y, x
}
func main() {
a, b := swap("hello", "world")
fmt.Println(a, b)
b, c := swap("foo", "bar")
fmt.Println(b, c)
b, c := swap("golang", "javascript") // Error!!
}
在golang里面,他会预设检查你是否有使用到所有的变数,如果没使用到,他会跳出警告跟你说你没用到这个变数,并不让你编译程序,但如果还是想要保留这个变数,就可以使用"_"来告诉编译器说你有用到这个变数
失败版
test := "Hello World!" // test declared but not used
成功版
test := "Hello World!"
_ = test
在golang里面的if写法跟其他的语言比较不一样,不需要将条件做括号
a := 1
b := 2
if a > b {
fmt.Println("a is greater than b")
} else {
fmt.Println("a is smaller than b")
}
另外,在golang里的if还有个特别的用法,就是可以在if前再放一段code,他的作用域就仅在if内,出去就取不到你里面的内容了
if name := "john"; name != "" {
fmt.Println("name:", name) // name: john
}
fmt.Println("name:", name) // !!ERROR
>>: 自动化测试,让你上班拥有一杯咖啡的时间 | Day 3 - 开始写第一个测试
职场好同学 CH CH 是之前一起准备升学的同学,但比我早好几年进入职场,本身也是 UX/UI 设...
前情提要: 建构式模式加上new是很擅长创造的能力。 我:这能力也太强了吧,所以new是只有你才会吗...
显示列表 访问案例网站时默认调用index.jsp,在此页面设定转向MainSvl。 http://...
在正式开始写程序前,还有几点要告诉大家。 所有的 Java 变数在可以使用前,都必须宣告他的名字(n...
Quantum Key Distribution Polarisation can be one o...