摘要: 闭包的示例代码 首先,函数名 ,函数的返回的类型 ,而在返回的函数中定义了一个局部变量,这个变量的作用域只属于返回的这个函数 比如,下面的代码 其中 和`sequence2 i`,这俩变量互不影响 阅读全文
posted @ 2019-03-17 11:26 Hitechr 阅读(129) 评论(0) 推荐(0) 编辑
摘要: 函数在定义 Go的函数使用 来定义,返回类型支持多个值的返回 参数列支持多个参数的声明,同一类型的函数,声明时和变量的声明一样 返回值类型也同样支持多个返回类型 返回的值可以有指定的变量,以便给调用者指定返回的变量名 函数的定义如下 在调用多个返回值的函数时,如果只想用到其中的一个,或部分结果时,不 阅读全文
posted @ 2019-03-15 22:41 Hitechr 阅读(149) 评论(0) 推荐(0) 编辑
摘要: 带条件的for循环 示例代码 for i:=0;i 阅读全文
posted @ 2019-03-11 22:18 Hitechr 阅读(233) 评论(0) 推荐(0) 编辑
摘要: if语句 如下代码 if a 10{ fmt.Println("大于10") }else if a 5 && a 阅读全文
posted @ 2019-03-07 22:10 Hitechr 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 常量的声明 常量使用 进行对不会被改变值的修饰符 const 常量名 [常量类型] = 常量值,和变量的声名一样可以省略类型 可以同时声明多个常量,例如: 枚举的声明 go里面没有专门定义枚举的关键词,因此使用const可以声明一个枚举 在定义常量组时,如果不提供初始值,则表示将使用上行的表达式 以 阅读全文
posted @ 2019-03-06 22:51 Hitechr 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 创建Map 通常在创建map时使用 的方法,guava提供了一个简洁的方法 List转换Map 一个key对应多个value的Multimap 在编写代码的过程中经常会用到 Guava的写法 ArrayListMultimap 返回的是一个List,HashMultimap返回的是一个Set Mul 阅读全文
posted @ 2019-03-06 12:41 Hitechr 阅读(2592) 评论(0) 推荐(0) 编辑
摘要: 当我们在统计一个字符串中每个单词出现的次数时,通常的做法是分割字符串,遍历字符串,然后放到一个map里面,来进行统计,Guava中提供了类似功能的集合,Multiset 代码如此简洁清晰。 实现逻辑 内部使用Map进行实现, HashMultiset.create() AbstractMapBase 阅读全文
posted @ 2019-03-04 22:40 Hitechr 阅读(2245) 评论(0) 推荐(0) 编辑
摘要: 简介 支持向量机是一种二分类模型,寻找一个超平面来对样本进行分割,分割的原则是保证间隔最大化。 如果一个线性函数能够将样本分开,称这些数据样本是线性可分的。 在二维空间线性函数就是一条直线,在三维空间线性函数就是一个平面,则这个线性函数统称为 超平面 分类后的数据点,到超平面距离最近的点称为 支持向 阅读全文
posted @ 2019-03-04 21:44 Hitechr 阅读(212) 评论(0) 推荐(0) 编辑
摘要: Joiner 连接 比如,有这样一个集合 ,想把这个集合转换成以 分割的字符串,并过滤掉集合中的空元素 运行结果: Splitter 分割 有这样一个字符串 ,要把这个字符串以 分割,并放到一个集合里面 运行结果: MapJoinner和MapSplitter 主要对url的param的编码 运行结 阅读全文
posted @ 2019-03-04 21:30 Hitechr 阅读(2019) 评论(0) 推荐(1) 编辑
摘要: 基于Redis的锁 1. 使用原子的set命令的nx 、ex参数设置过期时间和一个预定的值 2. 设置成功后,即获取到锁,执行业务操作,否则没有获取到锁 3. 获取锁的值,并比较预定的值是否和当前值相同,相同则可以删除,否则不能删除 以下代码基于Lua脚本实现 基于zookeeper的锁 1.客户端 阅读全文
posted @ 2019-02-26 17:54 Hitechr 阅读(255) 评论(0) 推荐(0) 编辑