保健励志美文体育育儿作文
投稿投诉
作文动态
热点娱乐
育儿情感
教程科技
体育养生
教案探索
美文旅游
财经日志
励志范文
论文时尚
保健游戏
护肤业界

Go语言和其他语言的不同之基本语法

  Go语言作为出现比较晚的一门编程语言,在其原生支持高并发、云原生等领域的优秀表现,像目前比较流行的容器编排技术Kubernetes、容器技术Docker都是用Go语言写的,像Java等其他面向对象的语言,虽然也能做云原生相关的开发,但是支持的程度远没有Go语言高,凭借其语言特性和简单的编程方式,弥补了其他编程语言一定程度上的不足,一度成为一个热门的编程语言。
  最近在学习Go语言,我之前使用过C、Java等面向对象编程的语言,发现其中有很多的编程方式和其他语言有区别的地方,好记性不如烂笔头,总结一下,和其他语言做个对比。这里只总结差异的地方,具体的语法不做详细的介绍。
  种一棵树最好的时间是十年前,其次是现在。基础语法1、变量
  1)Go语言变量声明语句不需要使用分号作为分割符varv1intvarv2string
  2)可以将若干个需要声明的变量放在一起var(v1intv2string)
  3)变量初始化时候可以和其他语言一样直接在变量后面加等号,等号后面为要初始化的值,也可以使用变量名:变量值的简单方式varv1int10正常的使用方法varv210编译器可以推导出v2的类型v3:10简单写法明确表达同时进行变量声明和初始化工作
  3)变量赋值Go语言的变量赋值和多数语言一致,但是Go语言提供了多重赋值的功能,比如下面这个交换i、j变量的语句:i,jj,i
  在不支持多重赋值的语言中,交换两个变量的值需要引入一个中间变量:ti;ij;jt;
  4)匿名变量
  在使用其他语言时,有时候要获取一个值,却因为该函数返回多个值而不得不定义很多没有的变量,Go语言可以借助多重返回值和匿名变量来避免这种写法,使代码看起来更优雅。
  假如GetName()函数返回3个值,分别是firstName,lastName和nickNamefuncGetName()(firstName,lastName,nickNamestring){returnli,mingqi,dove}
  若指向获得nickName,则函数调用可以这样写,,nickName:GetName()
  这种写法可以让代码更清晰,从而大幅降低沟通的复杂度和维护的难度。2、常量
  1)基本常量
  常量使用关键字const定义,可以限定常量类型,但不是必须的,如果没有定义常量的类型,是无类型常量
  2)预定义常量
  Go语言预定义了这些常量true、false和iota
  iota比较特殊,可以被任务是一个可被编译器修改的常量,在每个const关键字出现时被重置为0,然后在下一个const出现之前每出现一个iota,其所代表的数字会自动加1。预定义常量:true,false和iotaiota可以被认为是一个编译器修改的常量,在没有个const关键字出现时被重置为0,然后在下一个const出现之前,没出现一次iota,其所在的数字会自动增1const(c0iotac00c1iotac11c2iotac22)fmt。Println(c0:,c0)fmt。Println(c1:,c1)fmt。Println(c2,c2)const(x1iotax1(iota在每个const开头被重设为0)y1iotay2z1iotaz4)fmt。Println(x:,x)fmt。Println(y:,y)fmt。Println(z:,z)const(riota42tfloat32iota42wiota42)fmt。Println(r:,r)fmt。Println(t:,t)fmt。Println(w:,w)constaaiotaconst(bbiota)fmt。Println(aa:,aa)fmt。Println(bb:,bb)constmark23编译期运算的常量表达式fmt。Println(mark:,mark)
  3)枚举
  Go语言不支持emum关键字,而使用常量声明的方法定义枚举值:const(SundayiotaMondayTuesdayWendnesdayThursdayFridaySaturdaynumberOfDays)3、类型
  1)int和int32在Go语言中被认为是两种不同类型的类型
  2)Go语言定义了两个浮点型float32和float64,其中前者等价于C语言的float类型,后者等价于C语言的double类型
  3)go语言支持复数类型
  复数实际上是由两个实数(在计算机中使用浮点数表示)构成,一个表示实部(real)、一个表示虚部(imag)。也就是数学上的那个复数
  复数的表示varvaluecomplex64由两个float32构成的复数value13。212ivalue2:3。212ivalue2是complex128类型value3:complex(3。2,12)结果同value2
  实部与虚部
  对于一个复数zcomplex(x,y),就可以通过Go语言内置函数real(z)获得该复数的实部,也就是x,通过imag(z)获得该复数的虚部,也就是y
  4)数组(值类型,长度在定义后无法再次修改,每次传递都将产生一个副本。)
  声明数组可以使用〔n〕type方式,也可以使用make关键字〔10〕inta:make(〔10〕int)
  5)数组切片(slice)
  数组切片(slice)弥补了数组的不足,其数据结构可以抽象为以下三个变量:一个指向原生数组的指针数组切片中的元素个数数组切片已分配的存储空间。
  6)Map在go语言中Map不需要引入任何库,使用很方便4、条件语句If条件语句不需要括号将条件包含起来无论语句体内有几条语句,花括号{}必须存在左花括号{必须与if或者else处于同一行在if之后条件语句之前,可以添加变量初始化语句,使用分号间隔在有返回值的函数中,不允许将最终的return语句包含在if。。。else结构中,否则会编译失败。5、选择语句(switch)左花括号{必须和switch处于同一行条件表达式不限制常量或者证书单个case中,可以出现多个结果选项Go语言中不需要break来明确退出一个case只有在case中明确添加fallthrough关键字,才会继续执行紧跟得下一个case可以不设定switch之后的表达式,在此种情况下,整个switch结构和if。。。else的逻辑作用一样6、循环语句for
  Go循环语句只支持for关键字,不支持while和dowhile左{花括号必须与for处于同一行Go语言不支持以逗号为间隔的多个赋值语句,必须使用平行的赋值语句来初始化多个变量Go语言的for循环同样也支持continue和break来控制循环,但是它提供了一个更高级别的break,可以选择中断哪一个循环forj:0;j5;j{fori:0;i10i{ifi5{breakJLoopbreak语句终止的是JLoop标签处的外层循环}fmt。Println(i)}}JLoop:。。。7、跳转语句
  goto语句的语义非常简单,就是跳转到本函数内的某个标签funmyfunc(){i:0HERE:fmt。Println(i)iifi10{gotoHERE}}
  今天就介绍到这里,以后我会在总结Go语言在其他方面比如并发编程、面向对象、网络编程等方面的不同及使用方法。希望对大家有所帮助。

我心中的大山精选优秀作文家里有一座大山,妈妈有一座靠山,我有一座仰慕的高山。从小到大,大山教我如何走路,如何做人,如何一步一个脚印成长为男子汉。大山不仅言传而且身教。每当我做错事的时候,大……所谓朋友作文600字好朋友:不一定合情合理,但一定另你开心;不一定锦上添花,但一定雪中送炭;不一定形影不离,但一定心心相印;不一定常联络,但一定放在心中!好朋友是在你困惑的时候陪在你的……观察大鱼下小鱼我家的大鱼马上就要下小鱼了,我迫不及待的要看一看,大鱼怎么下的小鱼呢?在爸爸的指挥下我准备好捞鱼网,小鱼缸,静静的等候在鱼缸旁边。这时,鱼突然这儿窜那儿窜,好像是看到我受……新办的社保卡银行已激活,也开通了手机银行可是查询没有钱,是怎朋友们好!新的医保社保一卡通,已经大量发行,它具有医保,社保以及进入银行卡三大功能!许多朋友已经拿到并激活,那么如标题中所言的问题,开通了手机银行查询里面没有钱是怎么回事?明确……手机巨头幡然醒悟,三星宣布将取消手机广告,国产手机何时跟进?感谢您的阅读!今年很多手机厂商都做出了很多让我们很诧异的动作。比如说今年魅族的今年早期,就打造出了flyme9系统,这个系统就是号称没有广告,确实他的这种宣传获得了……智能手机买新不买旧?这三款旗舰表示不服,内行人都非常喜欢一直以来智能手机都有买新不买旧的说法,因为现在硬件发展速度确实太快了,基本上半年就是一更新的节奏,但我们的钱包显然不能承受,不是发烧友的话就没必要跟风,其实一些发布多时的旗舰机……快乐的寒假生活初一作文转眼间,寒假的脚步已经悄无声息地离开了。虽然寒假短暂,但是我却过得充实而有意义。在这个寒假里,我收获了快乐,收获了喜悦,更收获了感动。在年前的大扫除中。我帮着爸妈做着力所……不适合转正的备胎红米K40Pro长期体验报告备胎不能转正,在女神眼中都是有原因的。女神可能会想,这人作为备胎还行,但有些问题,始终不能转正。其实,女神与备胎的关系,有些类似用户与手机的关系,今天我想说的红米K40Pro,……假如我会变假如我会变,那该多好啊!可以为贫穷的人们过上幸福的生活,让大家充满快乐。紧张的考试来了,我做完作业,便躺在床上复习起语文书来,我读着读着,眼睛累了,就进入了梦香。起……我拥有我快乐人人都会因为形形色色的拥有而快乐,而我,却因为有一颗热爱读书的心而快乐。曾几何时,我迷上了读书。无论在清闲午后,还是在日落黄昏,翻开了手中的书卷,便如同被春雨滋润过……描写春天竹子的作文400字导语:春天,一个个竹笋从泥土里钻出来,好奇地看着外面。下面是小编整理的描写春天竹子的作文,一起来看看吧!篇一:描写春天竹子的作文400字我来给大家猜个谜语:小时青青腹中空……秋日的松作文800字秋是一个叶落归根的季节。你看,银杏树下铺了一地金黄,垂柳树下铺了一地枯叶,枫树下也铺上了一层火红hellip;hellip;这,好像就是秋的写照。可是,就在这一片枯萎的树……
小学生观大海作文400字范文站在软软的沙滩上,抬眼望去,蔚蓝色的天空里悬浮着几朵绸缎般的白云,一望无际的海面波涛滚滚。接下来品学网小编整理了小学生观大海作文,一起来看看吧!小学生观大海作文篇一海,是……大学生国家励志奖学金申请书国家励志奖学金(NationalEndeavorFellowship),助学金的一种。下面是小编整理的大学生国家励志奖学金申请书,欢迎大家参考!【1】大学生国家励志奖学金……长江存储推出UFS3。1高速闪存芯片华为在欧洲专利局申请量居富士康印度半导体制造厂进入选址阶段据外媒报道,印度韦丹塔(Vedanta)集团近日透露了其半导体领域投资计划的更多细节,称其与OEM巨头富士康合资在印建立半导体制造工厂的……我的爸爸就是这样一个人作文我敬佩的爸爸,因为他在工作繁忙时,还关心我的学习。自从爸爸担任主任后,工作更加繁忙了,每天睡的时间更少了,每天最多只能睡五、六个小时。有一天晚上,我三更半夜起床拉尿,发现……怒当连续剧Twitter总导演,马斯克再砸400亿美金如果交易失败,我会重新考虑自己作为大股东的地位(抛售股票)。本文来自微信公众号:壹番财经(ID:financeyifan),文郑亦久。上个月伊隆马斯克曾经在Twit……网商银行将暂停支付宝提现?回应来了4月19日,针对近日网商银行将逐步暂停支付宝提现或转入二类账户业务引关注一事,网商银行对北京商报表示,网商银行基于业务规则调整,逐步停止支付宝余额转入的功能,同时,仅支持本人绑……我的三项特长作文范文还在羡慕别人的特长吗?还在为自己没有特长而苦恼吗?其实,每个人都有自己的特长你有什么特长?如果我以同样的问题对十个人提问,我相信,有九个人会告诉我:运动、唱歌或画画,每每……小学生作文小狗的幸福在我们小区的花坛边上有一只肥狗,它肥的像一只猪,头上的毛都是竖起来的,超帅。我奶奶给它做了一件衣服,,让它在冬天可以暖活点儿,直到春天才给它脱下来,到了夏天给它喝冷的白开水。我……写军训感受的学生作文篇一:写军训感受的作文军人精神是一个叫人感到严肃的词,开始新的学习生活之前,我们不免要严肃一回。于是我们期待又恐惧的军训之旅终于到来,匆匆开始。听着广播里放着嘹亮的……描写大自然环境作文大自然的环境需要我们每人去保护和爱护的,下面请欣赏小编提供的大自然环境作文!描写大自然环境作文【1】每天,只要你细心倾听,就会听到大自然的声音。你听,那是什么声音?我听到……数字藏品市场持续升温山东首个国有数字藏品交易服务平台或将于下财联社区块链日报(北京,记者董宇佳)讯,近日,山东首个国有数字藏品交易服务平台海豹数藏项目正式启动建设,由山东省互联网传媒集团和山东文化产权交易所联手打造。区块链日报记者……的成功不是偶然是必然如果当年张一M接受了T讯的投资,你们说还会不会有如日中天的头条戏?你会觉得,哇!JD获得T讯的投资发展的不是很好吗?JD的核心业务是电商和物流,他拿到T讯的投资除了钱之外,身还……
友情链接:易事利快生活快传网聚热点七猫云快好知快百科中准网快好找文好找中准网快软网