一、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
print 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介绍的更多相关文章

  1. Golang 介绍与安装

    1.介绍与安装 Golang 是什么 Go 亦称为 Golang(按照 Rob Pike 说法,语言叫做 Go,Golang 只是官方网站的网址),是由谷歌开发的一个开源的编译型的静态语言. Gola ...

  2. Golang介绍以及安装

    Go语言 Google开源 编译形语言 21世纪的C语言 Go语言的特点 简单易并发 开发效率高 执行性能好 Go语言应用的领域 服务端开发 日志处理 文件系统 监控服务 容器虚拟化 Docker k ...

  3. Golang语言的入门开始

    一.golang介绍与安装 二.golang-hello world 三.golang的变量 四.golang的类型 五.golang的常量 六.golang的函数(func) 七.golang的包 ...

  4. go语言开发教程之web项目开发实战

    Golang介绍Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软件 ...

  5. GoWeb开发_Iris框架讲解(一)

    Golang介绍 Go语言是谷歌推出的一种全新的编程语言,可以在不损失应用程序性能的情况下降低代码的复杂性.谷歌首席软件工程师罗布派克(Rob Pike)说:我们之所以开发Go,是因为过去10多年间软 ...

  6. 【GoLang】golang 微服务框架 介绍

    原文如下: rpcx是一个类似阿里巴巴 Dubbo 和微博 Motan 的分布式的RPC服务框架,基于Golang net/rpc实现. 谈起分布式的RPC框架,比较出名的是阿里巴巴的dubbo,包括 ...

  7. golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍

    golang学习笔记17 爬虫技术路线图,python,java,nodejs,go语言,scrapy主流框架介绍 go语言爬虫框架:gocolly/colly,goquery,colly,chrom ...

  8. Golang Context 详细介绍

    Golang context 本文包含对context实现上的分析和使用方式,分析部分源码讲解比价多,可能会比较枯燥,读者可以直接跳过去阅读使用部分. ps: 作者本着开源分享的精神撰写本篇文章,如果 ...

  9. Golang的字符编码介绍

    Golang的字符编码介绍 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. Go里面内建仅支持UTF8字符串编码,因此如果你用fmt.Printf之类的函数无法将GBK,GB2312 ...

随机推荐

  1. 学JAVA的第二天,静态网站制作,脑阔一点疼

    先从下载apache-tomcat-9.0.17开始 在下边这个网站下载,下边一步步来 下面删除的这些是暂时用不上的,先吧它删除了,因为会拖慢启动速度 下边把ROOT里边除WEB-INF外的全不删除了 ...

  2. 【查漏补缺】File的path、absolutePath和canonicalPath的区别

    背景 在学习Idea的插件开发时,用到了相关的VirtualFileSystem这个东西,里面的VirtualFile有一个getCanonicalPath()方法引起了我的注意,我发现我不知道-- ...

  3. python3.6 pip 出现locations that require TLS/SSL异常解决方案

    在给CentOS服务器安装完Python3.6后,使用pip命令出现问题,提示说无法找到ssl模块. 上网查询后发现在安装Python3.6时没有安装openssl-devel依赖库,解决方案如下: ...

  4. C#设计模式之二工厂方法模式(Factory Method Pattern)【创建型】

    一.引言 在上一篇文章中我们讲解了过渡的一种模式叫做[简单工厂],也有叫[静态工厂]的,通过对简单工厂模式得了解,我们也发现了它的缺点,就是随着需求的变化我们要不停地修改工厂里面的方法的代码,需求变化 ...

  5. JavaScript是如何工作的:深入类和继承内部原理 + Babel和TypeScript 之间转换

    这是专门探索 JavaScript 及其所构建的组件的系列文章的第 15 篇. 如果你错过了前面的章节,可以在这里找到它们: JavaScript 是如何工作的:引擎,运行时和调用堆栈的概述! Jav ...

  6. CSS---伪类与伪元素的区别

    在CSS中对于伪类和伪元素并没有做出很明显的区别定义,两者的语法是一样的,都是以 : 开头,这样导致我们将一些伪元素误认为伪类,如 :before :after 而在CSS3中给出了明显的定义. ☞ ...

  7. Python常用模块:datetime

    使用前提: >>> from datetime import datetime 常见用法: 1.获取当前日期和时间 >>> now = datetime.now() ...

  8. Android为TV端助力(转载)

    作者地址http://www.jianshu.com/u/63915ef020e2 针对Android Tv的自定义RecyclerView 作者 wenju_song 关注 2016.12.09 1 ...

  9. 用canvas给视频图片添加特效

    Canvas制作视频图片特效 1. Canvas介绍 1.1Canvas是html5上的一个画布标签,功能有点类似java的swing.可以在canvas上画线条 弧线, 文字 就是画布的功能. 具体 ...

  10. SQL 使用临时表和临时变量完成update表字段---实际案例

    -- 使用临时表 -- 创建临时表 --ALTER TABLE TS_ExpenseApplication_Reim_Detail ADD BgCode NVARCHAR() NULL, BgItem ...