golang介绍
一、golang介绍
golang是Google开发的一种 静态强类型、编译型,并发型,并具有垃圾回收功能的编程语言。
二、语言特性
1.、自动垃圾回收
2、支持函数多返回值
3、并发强
三、golang程序基本语法
1、所有go源码以.go结尾
2、go程序执行入口是main()函数
3、go语言严格区分大小写
4、go语言编译时是一行一行编译的,所以代码一行不能写入多条的语句
5、go语言定义的变量和import的包,如果没有使用,就会报错
四、GO语言特殊字符
1、\t 指标符(tab建)
2、\n 换行符
3、\ 取消符号转义,(类似shell的\)
4、\r 回车键
五、GO语言注释
1、// 单行注释
2、/**/ 多行注释(/*注释内容*/)
六、Go语言代码规范
1、 缩进标准为一个tab的长度
2、运算符以一个空格隔开(var x = a + b)
3、go语言写法只能
func add(){ //大括号在这
}
不允许如下
func add()
{ //大括号在这
}
4、保留关键字
| break | default | func | interface | select |
| case | defer | go | map | struct |
| chan | else | goto | package | switch |
| const | fallthrough | if | range | type |
| continue | for | import | return | var |
| append | bool | byte | cap | close | complex | complex64 | complex128 | uint16 |
| copy | false | float32 | float64 | imag | int | int8 | int16 | uint32 |
| int32 | int64 | iota | len | make | new | nil | panic | uint64 |
| println | real | recover | string | true | uint | uint8 | uintptr |
5、golang语言hello world例子
package main
import "fmt" func main(){
fmt.Println("Hello World!")
}
七、变量
1、声明变量(如:声明一个n变量,类型为int)
var n int
n = 10
fmt.Println(n) 如果不定义类型,go会自己推导类型
如:
var x = 1
var y =1.2
fmt.Printf("Type: %T Value: %v\n", x, x)
fmt.Printf("Type: %T Value: %v\n", y, y)
结果:
Type: int Value: 1
Type: float64 Value: 1.2
2、简化变量声明与赋值
var x int
x = 3
上面两行等同于
x := 3
3、多变量声明
方法一、
var a1, a2, a3 int
fmt.Println(a1, a2, a3)
结果:
0 0 0 方法二、
var a1 ,a2, a3 = 1,"a2",3.3
fmt.Println(a1, a2, a3)
结果:
1 a2 3.3 方法三、(等价方法二)
a1 ,a2, a3 := 1,"a2",3.3
fmt.Println(a1, a2, a3)
4、golang变量注意事项
1、go语言定义的变量如果没有赋值、编译器会使用默认值,如int为0,string为""(空字符串)
2、变量在同一作用域内不能重名(数据类型也不可变,值可变)
如:
var i int = 1 定义了后就不能 i:= 2.2
golang介绍的更多相关文章
- Golang 介绍与安装
1.介绍与安装 Golang 是什么 Go 亦称为 Golang(按照 Rob Pike 说法,语言叫做 Go,Golang 只是官方网站的网址),是由谷歌开发的一个开源的编译型的静态语言. Gola ...
- Golang介绍以及安装
Go语言 Google开源 编译形语言 21世纪的C语言 Go语言的特点 简单易并发 开发效率高 执行性能好 Go语言应用的领域 服务端开发 日志处理 文件系统 监控服务 容器虚拟化 Docker k ...
- Golang语言的入门开始
一.golang介绍与安装 二.golang-hello world 三.golang的变量 四.golang的类型 五.golang的常量 六.golang的函数(func) 七.golang的包 ...
- go语言开发教程之web项目开发实战
Golang介绍Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软件 ...
- GoWeb开发_Iris框架讲解(一)
Golang介绍 Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软 ...
- 【GoLang】golang 微服务框架 介绍
原文如下: rpcx是一个类似阿里巴巴 Dubbo 和微博 Motan 的分布式的RPC服务框架,基于Golang net/rpc实现. 谈起分布式的RPC框架,比较出名的是阿里巴巴的dubbo,包括 ...
- golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍
golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍 go语言爬虫框架:gocolly/colly,goquery,colly,chrom ...
- Golang Context 详细介绍
Golang context 本文包含对context实现上的分析和使用方式,分析部分源码讲解比价多,可能会比较枯燥,读者可以直接跳过去阅读使用部分. ps: 作者本着开源分享的精神撰写本篇文章,如果 ...
- Golang的字符编码介绍
Golang的字符编码介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Go里面内建仅支持UTF8字符串编码,因此如果你用fmt.Printf之类的函数无法将GBK,GB2312 ...
随机推荐
- "PECS原则"几篇好文章
<? extends T>和<? super T>Java 泛型中的PECS原则(copy源码样例)
- Java开发笔记(十二)布尔变量论道与或非
在编程语言的设计之初,它们除了可以进行数学计算,还常常用于逻辑推理和条件判断.为了实现逻辑判断的功能,Java引入了一种布尔类型boolean,用来表示“真”和“假”.该类型的变量只允许两个取值,即t ...
- Java开发笔记(二十一)二维数组的扩展
前面介绍的数组容纳的是一串数字,仿佛一根线把这组数字串了起来,故而它只是一维数组.一维数组用来表示简单的数列尚可,要是表达复杂的平面坐标系,那就力不从心了.由于平面坐标系存在水平和垂直两个方向,因此可 ...
- 【开源】Netty轻松实现聊天室,附带数据记录,聊天历史
阅读本文约“2.5分钟” 听说快七夕······ 不对,这不是今天的主题,嘿嘿. 今天说说一个小的网页聊天室,功能如下 群聊无限制 记录用户群聊信息 下次登录显示聊天历史 消息发送速度(光速) 聊天历 ...
- FastDfs集群docker化部署
初识分布式文件系统FastDFS- 1.分布式与集群的区别 区别:集群是个物理形态,分布式是个工作方式.只要是一堆机器,就可以叫集群,他们是不是一起协作着干活,这个谁也不知道:一个程序或系统,只要运行 ...
- 2018/12.21:函数this的指向
1. 解决函数内this指向 1. 可以在函数外提前声明变量 _this/that=this 2. 通过apply和call 来修改函数内的this指向 (1) ...
- TSP(Traveling Salesman Problem)-----浅谈旅行商问题(动态规划,回溯实现)
1.什么是TSP问题 一个售货员必须访问n个城市,这n个城市是一个完全图,售货员需要恰好访问所有城市的一次,并且回到最终的城市. 城市于城市之间有一个旅行费用,售货员希望旅行费用之和最少. 完全图:完 ...
- JavaScript 包装对象
万物皆对象 在JavaScript里,万物皆对象.但是某些对象有别于其它对象,我们可以用 typeof 来获取一个对象的类型,它总是返回一个字符串. typeof 123; // 'number' t ...
- 通过ADB查看当前Activity
cmd命令中输入:adb shell dumpsys activity activities 在一连串的输出中找到Runing activities com.android.settings是包名. ...
- Android application使用总结
简介: Application和Activity.Service一样,都是Android框架的一个系统组件,每一个应用都有一个Application,Application的生命周期也就是整个app的 ...