Go语言Go语言是啥Go语言是谷歌2009发布的第二款开源编程语言。Go语言专门针对多处理器系统应用程序的编程进行了优化,使用Go编译的程序可以媲美C或C++代码的速度,而且更加安全、支持并行进程。Go官方网站GO官方网站文档一个中文官方文档:下载地址语言的优势Go代码会被编译为机器代码,编译后的程序运行速度可与C/C++媲美,无需额外的虚拟机和解析器;因为不需要额外的虚拟机和解析器,所以部署起来也很简单方便Go程序和管道使得并行代码可读性高、条理清晰。同时也使并行代码更加安全而无须显式锁,此外也不用担心出现回调错乱Go语言运用场景谷歌当初将该语言设计和定位为一款系统编程语言,可以被用于网络服务器、存储系统和数据库中。由于存在并行编程模式,因此这一语言也被设计用来解决多处理器的任务。Go语言目前从虚拟化到Git代码托管服务等方面,都有重量级项目现身,越发凸现Go语言在云计算时代的重要性。谷歌旗下AppEngine和其他部分产品已经开始使用go语言来编写,在国内有七牛云存储、盛大云计算、腾讯信鸽等等公司也在使用调用cmd命令pingxxcbGo语言的环境搭建1.在Go语言的Google代码项目上下载Windows下的Go语言开发包2.下载对应的msi安装文件或者zip解压文件,安装或者解压3.手动添加环境变量4.系统变量名:添加GOROOT值:Go的安装位置系统变量名:Path追加值:;%GOROOT%\bin5.在cmd中输入goversion查看是否搭建成功,下面是搭建成功后的结果。Go语言怎么运行如有一个1.go文件使用go工具如gccgo运行$gorun1.go还可以转成exe文件直接运行在cmd下运行gorun1.go就可以运行go程序了下面是cmd下的运行go文件:fmt输出1fmt包的println和printf是常见的输出方法。Println简单输出,Printf还支持%式的输出。main是一个特殊的package名字,类似Java的main函数,GO的可执行程序必须在mainpackage下,自动使用main()方法下面是使用Println方法的hellowordfmt输出2Printf支持%式的输出helloworld容易遇到的问题1在txt文件中,输入上面的代码,保存之后修改名称为1.go,运行该文件错误原因因为go语言要求源代码文件必须是UTF-8编码,但又不允许带UTF-8BOM,而txt是含有BOM头的。所以正确步骤是在编辑器将代码写好之后,保存为.go文件。helloworld容易遇到的问题2将控制结构的左大括号放在下一行错误原因通常Go程序仅在for循环语句中使用分号,以此来分开初始化器、条件和增量单元。如果你在一行中写多个语句,也需要用分号分开。所以无论任何时候,你都不应该将一个控制结构((if、for、switch或select)的左大括号放在下一行。如果这样做,将会在大括号的前方插入一个分号,这可能导致出现不想要的结果变量和常量变量的声明很像javascript,使用var关键字。常量很简单,使用const关键字:定义时遇到的问题重复定义会警告禁止未使用变量和多余import数组数组的切片操作if语句if语句没有圆括号,而必需要有花括号swich语句switch语句没有break,还可以使用逗号case多个值如果switch没有表达式,它会匹配truefor语句控制结构容易遇到的问题Go语言中,只有几个控制结构,它没有do或者while循环Go的控制结构的语法和php相比有所不同,它不需要圆括号,但语句体必须总是包含在大括号内。函数Go语言是反过来声明变量类型和函数返回值下面这个是返回一个值函数这个是返回两个值的函数函数下面是参数不定数量的示例,for不错哦函数闭包和递归写函数容易遇到的问题Go语言中没有public,protected,private的关键字。所以你想让一个方法可以被别的包访问的话,你需要把这个方法的第一个字母大写Go语言是反过来声明变量类型和函数返回值import另外的文件新建目录collection,目录下新建go文件在22.go文件中,main函数中导入结构体接口和多态Go语言没有类的构造器所谓Go语言式的接口,就是不用显示声明类型T实现了接口I,只要类型T的公开方法完全满足接口I的要求,就可以把类型T的对象用在需要接口I的地方。错误处理-Errornil在概念上和其它语言的null、None、nil、NULL一样,都指代零值或空值。在golang中,nil只能赋值给指针、channel、func、interface、map或slice类型的变量。