• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    公众号

go语言基本语法

原作者: [db:作者] 来自: [db:来源] 收藏 邀请

1 类型系统

1.1 struct

func new(t Type) *Type

s := new(Student)

new返回的是一个指针类型。

 

struct可以由匿名成员。

type man struct {

    sex string

}

var man1 = new(man)

man1.age=11

 

1.2 变量的声明

1.2.1 使用var关键字声明

var a string;//声明一个string类型的变量a

1.2.2 不用var关键字

a := "hello"; //使用:=号就可以不用var关键字

这个时候编译器自动推断定义的变量的类型。

 

2 数据结构

数组

切片

映射

第一,创建映射

dict := make(map[string]string)

第二,初始化映射

dict := map[string]string{"red":"#da1337", "orange":"#e95a22"}

 

3 go函数

3.1 go函数的定义

func 方法名(参数列表) 返回值 {

    定义

}

go函数可以返回多个返回值,调用函数的时候按照先后次序赋值即可。 

3.2 defer函数

第一,defer函数在主函数体执行完之后执行;

第二,多个defer函数按照后进先出的顺序执行;

 

4 go方法

go方法就是在func关键字和方法名之间显示的声明了一个this关键字。

go不是面向对象的语言,但是它却通过go方法提供了类似对象的功能。java中提供了一个this指针,go没有,它要求在定义方法的时候显式的将这个this声明出来,这个声明放在func关键字和方法名之间。如果是值的话,那么只是调用者的副本,调用者本身不会被改变;如果是指针的话,那么调用者本人,调用者本身会被改变。

5 并发

5.1 goroutine

gorouting直接在声明处开始执行。

gorouting可以理解为go语言层面的线程,它使得并发变成变得简单。go语言自己有一个gorouting的调度器,从而实现并发。

默认是一个逻辑处理器,一个逻辑处理器可以理解为一个物理处理器。

5.2 通道

gorouting发送消息给通道,然后在主程序中获取消息。

 

6 特殊语法

go每行是一条语句,不需要分号。

7 循环

7.1 for循环

第一种,for init; condition; post {}

for a := 0; a < 10; a++ {
      fmt.Printf("a 的值为: %d\n", a)
   }

这个和java的一样,只是没有括号。

第二种,range格式对slice、map、数组和字符串进行迭代循环

for key, value := range oldMap {

    newMap[key] = value

}

8 go的包

第一,import的是一个包,并不是一个文件,多个文件可以属于同一个包,这个由文件头的package指定包名;

第二,import时,路径一直到该文件的目录为止,该文件的目录名和该文件的包名相同;

第三,使用包的函数时,用包名+函数名的方式使用;

 

9 类型断言

9.1 什么是类型断言

 所谓类型断言就是断言一个接口变量的类型,返回两个值,断言的布尔值和变量的具体值。

9.2 类型断言可以用来做什么

 当我们只知道接口变量而不知道对象的具体的类型的时候,可以用类型断言获取接口变量下面具体的类型的值。

 

10 不妨将golang当成一个面向对象的语言来使用

抛弃golang的闭包,将之当成一种面向对象的语言来使用还是挺方便的。

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
【从goroutine学习go】简单加法发布时间:2022-07-10
下一篇:
gotour--Interfaces发布时间:2022-07-10
热门推荐
热门话题
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap