Go语言基础学习
通过Go语言旅行,你会发现Go语言如此简洁,优美,灵活,让人一见倾心,再见倾城,三见倾国
Packages
包
Every Go program is made up of packages.
每个Go程序是由包组成的
Programs start running in package main.
程序从main包开始运行
This program is using the packages with import paths "fmt" and "math".
这个程序包导入路径 fmt 和 math
By convention, the package name is the same as the last element of the import path.
习惯上,包名和最后一个导入路径相同
package main
import (
"fmt"
"math"
)
func main() {
fmt.Println("Happy", math.Pi, "Day")
}
输出:
Happy 3.141592653589793 Day
Imports
导入
This code groups the imports into a parenthesized, "factored" import statement. You can also write multiple import statements, like:
代码的导入用括号括起来导入元素,也可以写成多个导入语句,像下面:
import "fmt"
import "math"
but it's common to use the factored form to eliminate clutter.
但是一般都是使用导入元素的方式以免混乱
Exported names
输出名字
After importing a package, you can refer to the names it exports.
导入包之后你就可以引用你导入的包名了
In Go, a name is exported if it begins with a capital letter.
在Go语言中,如果导入的名字首字母大写
Foo is an exported name, as is FOO. The name foo is not exported.
Foo是导入名,FOO和foo都不是合法的输出
Run the code. Then rename math.pi to math.Pi and try it again.
package main
import (
"fmt"
"math"
)
func main() {
fmt.Println(math.pi)
}
输出:
prog.go:9: cannot refer to unexported name math.pi
prog.go:9: undefined: math.pi
改成math.Pi就OK了
Functions
函数
A function can take zero or more arguments.
一个函数可以有0到多个参数
In this example, add takes two parameters of type int.
在这个例子中,add函数有2个int类型参数
Notice that the type comes after the variable name.
注意类型在变量名后边
(For more about why types look the way they do, see the article on Go's declaration syntax.)
http://golang.org/doc/articles/gos_declaration_syntax.html
想了解更多为什么他们要这么做,可以看下面的文章
package main
import "fmt"
func add(x int, y int) int {
return x + y
}
func main() {
fmt.Println(add(42, 13))
}
When two or more consecutive named function parameters share a type, you can omit the type from all but the last.
当两个或者更多连续的参数类型相同时,你可以省略前面的类型只写最后一个
In this example, we shortened
x int, y int
to
x , y int
A function can return any number of results.
一个函数可以返回任意个结果
This function returns two strings.
这个函数返回两个字符串
package main
import "fmt"
func swap(x, y string) (string, string) {
return y, x
}
func main() {
a, b := swap("hello", "world")
fmt.Println(a, b)
}
Functions take parameters. In Go, functions can return multiple "result parameters", not just a single value. They can be named and act just like variables.
函数携带参数,在Go中,函数能返回多个 结果参数,不只一个单独的值,可以对这些 结果参数像变量一样命名和操作
If the result parameters are named, a return statement without arguments returns the current values of the results.
如果命名了 结果参数,一个空的返回语句,返回结果的当前值
package main
import "fmt"
func split(sum int) (x, y int) {
x = sum * 4/9
y = sum - x
return
}
func main() {
fmt.Println(split(17))
}
输出:
7 10
Variables
变量
The var statement declares a list of variables; as in function argument lists, the type is last.
var语句声明一个变量列表,和函数参数列表一样,类型在最后
package main
import "fmt"
var x, y, z int
var c, python, java bool
func main() {
fmt.Println(x, y, z, c, python, java)
}
输出:
0 0 0 false false false
A var declaration can include initializers, one per variable.
变量声明能包含每个变量的初始化
If an initializer is present, the type can be omitted; the variable will take the type of the initializer.
如果变量初始化了,类型可以省略,变量能够根据初始化判断类型
package main
import "fmt"
var x, y, z int = 1, 2, 3
var c, python, java = true, false, "no!"
func main() {
fmt.Println(x, y, z, c, python, java)
}
输出:
1 2 3 true false no!
Inside a function, the := short assignment statement can be used in place of a var declaration with implicit type.
在函数内部, := 短赋值语句能够通过隐式类型取代var声明
(Outside a function, every construct begins with a keyword and the := construct is not available.)
在函数外,每个构造函数以关键字和 :=是不可以的
分享到:
相关推荐
“一次旅行,A Go of Go网站的练习”,这个标题揭示了我们即将踏上一段深入理解Go语言的旅程。Go,也被称为Golang,是由Google开发的一种静态类型的、编译型的、并发型且具有垃圾回收功能的编程语言。它的设计目标是...
"in the centre of" 用来表示位于一个区域的正中心,如:“There is a beautiful fountain in the centre of People’s Square.”(人民广场中央有一个美丽的喷泉。)而 "in the middle of" 强调的是事物处于一段...
5. "Last weekend, we took a tour by coach to the Summer Palace…"(不定冠词表示泛指一次旅行) 【词汇与短语】 1. **重点词汇**:airplane, coach, departure lounge, transport, nod, tears, towards, ...
标准ML是具有正式规范的功能性编程语言。 它具有静态类型以防止各种各样的常见错误,而且还具有强大的类型推断功能,几乎不需要类型声明。 由于原因,很容易定义新的数据类型和结构,并且由于其强大的模块系统和 ,...
此外,重点句型包括"I hope to go on a nature tour."(我希望去一次自然之旅)以及"I don’t want to go anywhere cold."(我不想去任何寒冷的地方)。这些知识不仅涵盖了基本的词汇运用,还涉及了不同类型的旅行...
7. **take a trip**:进行一次旅行,简短表述旅行的行为。 8. **provide sb with sth = provide sth for sb**:提供某人某物,表示给予帮助或服务。 9. **be away**:离开或远离某个地方,常用于描述不在家或不在...
4. `go for a walk`:去散步,是休闲活动的一种。 5. `one of ...`:...之一,用于表示一个系列中的一个成员。 6. `be famous for/as`:因为(作为)...而闻名,用于介绍某个地方或人的特色。 7. `fall off`:从......
1. “journey”通常指长距离的陆路旅行,如“Go on a tour to Australia”。 2. “travel”作为动词,意味着进行旅行,如“travel around the world”表示周游世界,而“travel to+地点”表示到某地旅行。 3. “trip...
Let's go for a bike trip." 鼓励学生享受户外活动,如骑自行车旅行,同时锻炼语言运用能力。 4. **城市印象和评价**: - "It's beautiful. The food is delicious and the people are friendly." 学生需要学会...
Grammar, Reading and speaking)、旅行计划(如旅行伙伴的选择,如Her friends, Her parents, A tour group,目的地特色,如Its beaches, Its food, Its volcanoes)以及奇异经历的讨论(如狗能送信,Jason’s dog...
- `voyage`:航海,强调海上或空中的长途旅行,常与“make/take a voyage”或“go on a voyage”搭配。 - `journey`:通常指陆地上的远距离旅行。 - `trip`:通常指的是较短的、短期的旅行,常常包含返回原出发地...
- **go on an excursion/have an excursion**:两者同义,意为进行一次远足。 - **take sb. some time**:表示某事花费了某人一定的时间,如“My trip took me a long time.” - **It takes sb. some time to do sth...
- `go on a tour to…`(去...旅行) - `be attractively packaged`(包装精美) - `be harmful to`(对...有害) - `reduce the pollution of the environment`(减少环境污染) - `a large amount of money`...
- `go on a wildlife tour`:参加野生动物之旅,一种特殊的旅行体验,观察和学习野生动物。 - `explore a forest`:森林探险,对森林环境进行探索和研究。 - `go camping`:去露营,户外活动,通常在自然环境中...
9. 语言应用:如“最…之一”(one of + 最高级 + 名词复数)和“乘巡洋舰”(cruise),让学生掌握表达最高级和特定活动的方式。 通过这个总结,学生可以系统地复习和扩展他们的英语词汇,提高语言运用能力,并为日常...
“After I had left a small village in the south of France, I drove on to the next town.”描绘了离开法国南部村庄后继续前往下一个城镇的情景;“On the way, a young man waved to me.”描述了路上有人挥手...
- `a professional tour guide`:一个专业的导游 - `famous tourist attractions/places of interest`:著名景点 - `customer satisfaction`:客户满意度 - `faulty items/products`:故障产品 - `get ...
* go on an excursion=have an excursion:进行一次远足 * take sb. some time:花费某人多少时间 * spend:花费、花费时间 * pay for:付款、花费金钱 * it 形式主语:形式主语it 五、英语语言点 * It takes sb ...
例如,"We have to think about whether we should buy the car."(我们需要考虑是否应该买车)和"I’m thinking about the plan for our tour."(我在考虑我们的旅行计划)。 2. 附加疑问句的结构。例如"You were ...