Go语言数组去重在使用Go语言的时候,碰到了需要对数组进行去重操作的问题 。Java语言有Set集合这个数据结构,可以很方便的将数组转为集合,但是Go语言没有Set,如果仅仅是因为去重操作就手动实现一个Set太繁琐了 。可以根据Go语言中的map的特性来简单实现一下
这个是对字符串数组去重操作 。可以根据需要的类型稍作修改即可 。需要注意的是只支持可以作为map键的结构进行去重!
Go语言基础语法(一)本文介绍一些Go语言的基础语法 。
先来看一个简单的go语言代码:
go语言的注释方法:
【go语言映射map go语言map初始化】代码执行结果:
下面来进一步介绍go的基础语法 。
go语言中格式化输出可以使用 fmt 和 log 这两个标准库,
常用方法:
示例代码:
执行结果:
更多格式化方法可以访问中的fmt包 。
log包实现了简单的日志服务,也提供了一些格式化输出的方法 。
执行结果:
下面来介绍一下go的数据类型
下表列出了go语言的数据类型:
int、float、bool、string、数组和struct属于值类型,这些类型的变量直接指向存在内存中的值;slice、map、chan、pointer等是引用类型,存储的是一个地址,这个地址存储最终的值 。
常量是在程序编译时就确定下来的值,程序运行时无法改变 。
执行结果:
执行结果:
Go 语言的运算符主要包括算术运算符、关系运算符、逻辑运算符、位运算符、赋值运算符以及指针相关运算符 。
算术运算符:
关系运算符:
逻辑运算符:
位运算符:
赋值运算符:
指针相关运算符:
下面介绍一下go语言中的if语句和switch语句 。另外还有一种控制语句叫select语句,通常与通道联用,这里不做介绍 。
if语法格式如下:
if ... else :
else if:
示例代码:
语法格式:
另外,添加 fallthrough 会强制执行后面的 case 语句,不管下一条case语句是否为true 。
示例代码:
执行结果:
下面介绍几种循环语句:
执行结果:
执行结果:
也可以通过标记退出循环:
--THE END--
Go语言和其他语言的不同之基本语法Go语言作为出现比较晚的一门编程语言,在其原生支持高并发、云原生等领域的优秀表现,像目前比较流行的容器编排技术Kubernetes、容器技术Docker都是用Go语言写的 , 像Java等其他面向对象的语言,虽然也能做云原生相关的开发 , 但是支持的程度远没有Go语言高 , 凭借其语言特性和简单的编程方式,弥补了其他编程语言一定程度上的不足,一度成为一个热门的编程语言 。
最近在学习Go语言,我之前使用过C#、Java等面向对象编程的语言,发现其中有很多的编程方式和其他语言有区别的地方 , 好记性不如烂笔头,总结一下,和其他语言做个对比 。这里只总结差异的地方,具体的语法不做详细的介绍 。
种一棵树最好的时间是十年前,其次是现在 。
3)变量初始化时候可以和其他语言一样直接在变量后面加等号,等号后面为要初始化的值,也可以使用变量名:=变量值的简单方式
3)变量赋值 Go语言的变量赋值和多数语言一致,但是Go语言提供了多重赋值的功能,比如下面这个交换i、j变量的语句:
在不支持多重赋值的语言中,交换两个变量的值需要引入一个中间变量:
4)匿名变量
在使用其他语言时,有时候要获取一个值,却因为该函数返回多个值而不得不定义很多没有的变量,Go语言可以借助多重返回值和匿名变量来避免这种写法,使代码看起来更优雅 。
推荐阅读
- 视频号怎么做达人带货,视频号怎么做达人带货
- 打开抖音直播有什么要求,怎么打开抖音直播
- oraclesql时间排序函数,oracle按照时间排序
- latata直播教程,latata舞台秀
- mysql怎么查连接会话 查看mysql连接信息
- 包含sqlserver14331434的词条
- 竞速赛车自行车游戏,竞速赛车视频
- 快手直播伴侣连不上手机,快手直播伴侣没反应
- python函数设置精度 python小数精度