ICode9

精准搜索请尝试: 精确搜索
  • golang 获取变量类型的三种方法2022-03-28 12:34:49

    package main import ( "fmt" "reflect" ) func main() { var num float64 = 3.14 // 方法1: println(reflect.TypeOf(num).Name()) // 方法2: fmt.Println(reflect.TypeOf(num)) // 方法3: fmt.Printf(`%T`, num)

  • 一种优雅的Golang的库插件注册加载机制2022-03-28 09:32:28

    一种优雅的Golang的库插件注册加载机制 你好,我是轩脉刃。 最近看到一个内部项目的插件加载机制,非常赞。当然这里说的插件并不是指的golang原生的可以在buildmode中加载指定so文件的那种加载机制。而是软件设计上的「插件」。如果你的软件是一个框架,或者一个平台性产品,想要提升扩展

  • 行之有效的Golang编码规范2022-03-27 03:01:00

    编码规范 熟悉编码规范可以帮助我们写出可读性高,可测试性高的代码同时编码规范也是小型重构的利器,现在我们从命名,变量,循环,注释,函数等方面,谈谈如何从编码角度提升整体项目质量。 命名 命名的首要要求是准确直观地表达意图,次要要求是简短。 除了一些大家比较熟知的缩写外,不推荐

  • Golang | map的定义和使用2022-03-27 02:32:08

    Map map是一堆键值对的未排序集合,比如以身份证号作为唯一键来标识一个人的信息。 map是引用类型,键必须支持相等运算符(==,!=)类型,比如:int,string,float等内建类型,只含有内建类型的结构体可以作为key。值可以是任意类型,没有限制。 初始化 var m1 map[string]string m2 := make(map[s

  • golang reflect反射2022-03-26 15:32:02

    反射是指在程序运行期对程序本身进行访问和修改的能力。程序在编译时,变量被转换为内存地址,变量名不会被编译器写入到可执行部分。在运行程序时,程序无法获取自身的信息。支持反射的语言可以在程序编译期将变量的反射信息,如字段名称、类型信息、结构体信息等整合到可执行文件中,并给

  • Golang 小练习(控制台输入 5 名学生的成绩,如果低于 60 分的,自动修正成绩为 60,并且展现成绩清单)2022-03-25 23:32:15

    控制台输入 5 名学生的成绩,如果低于 60 分的,自动修正成绩为 60,并且展现成绩清单。 package main import "fmt" func main() { var grade [5]float64 for i:=0;i<len(grade);i++ { fmt.Printf("输入第 %d 的成绩:",i+1) fmt.Scanln(&grade[i]) if grade[i] < 60 { gra

  • golang中select和switch的区别2022-03-25 21:04:48

    select select只能应用于channel的操作,既可以用于channel的数据接收,也可以用于channel的数据发送。 如果select的多个分支都满足条件,则会随机的选取其中一个满足条件的分支, 如语言规范中所说: If multiple cases can proceed, a uniform pseudo-random choice is made to decide w

  • 商汤Golang笔试题2022-03-25 20:00:59

    type DoOnePieceFunc func(piece int) func MyFunction(ctx context.Context, workers, pieces int, doOnePiece DoOnePieceFunc) 该函数是提供给第三方的并发处理框架,其启动workers个协程并发处理用户的任务,用户任务的数据被分为总共pieces份,数据被标号为0到pieces-1,doOnePiece

  • golang post get 方式获取json数据2022-03-25 10:31:14

    func checkErr(err error) { if err != nil { fmt.Println(err) panic(err) } } // post方式获取json数据 func Post(value1, value2, value3 int) { var c map[string]interface{} // 提交数据的url url := "https://baidu.com/test" client := &http.

  • 从实例学习 Go 语言,两天速通 Golang 的学习笔记及心得体会2022-03-25 04:00:23

    准备工作 为什么要从实例学习go语言? 我认为,从实例来学习一门编程语言,把编程语言各个重要的知识点通过例子展现出来,更加生动形象,对刚接触go语言的程序员来讲是最佳的选择。你不可能拿本编程宝典在那生啃是吧!肯定要动手参与敲代码的实践当中才有最好的学习效果。 为什么要写这篇文章

  • 第一章 Golang开山篇2022-03-21 21:30:39

    1.1 Golang的学习方向 Go语言,我们可以简单的写成Golanguage。 Golang可以用来做什么? 区块链研发工程师、Go服务器端/游戏软件工程师、Golang分布式/云计算软件工程师 Go语言优势:大数据处理,处理大并发。 1.2主要应用方向 区块链技术:简称BT,也被称之为分布式账本技术,是一种互联

  • golang 垃圾回收和内存逃逸分析2022-03-21 14:04:34

    1. golang垃圾回收 golang的垃圾回收算法是三色标记法,其中三个颜色分别为:灰色、黑色、白色,其对应了垃圾回收过程中变量的三种状态: 灰色:对象还在标记队列中等待 黑色:对象已经被标记,该对象不会在本次GC中被回收 白色:对象为被标记,该对象会在本地GC中被回收   1.1 垃圾回收流程 假

  • golang_listen22022-03-20 18:35:41

      := 只能在第一次声明时用到  1.标识符、关键字 2. 变量和常量  3. 数据类型 4. Go程序基本结构 标识符,关键字 1. 标识符是⽤来表示Go中的变量名或者函数名,以字⺟或_开头。后⾯跟着字⺟ 、_或数字 2 关键字 关键字是Go语⾔预先定义好的,有特殊含义的标识符 变量 var a int var

  • golang 结构体tag2022-03-20 16:04:47

    struct成员变量标签(Tag)说明 要比较详细的了解这个,要先了解一下golang的基础,在golang中,命名都是推荐都是用驼峰方式,并且在首字母大小写有特殊的语法含义:包外无法引用。但是由经常需要和其它的系统进行数据交互,例如转成json格式,存储到mongodb啊等等。这个时候如果用属性名来作为键值

  • Golang语言中map的初始化及使用示范2022-03-20 13:03:37

    package main   import "fmt"   func main() {     //golang语言中map的初始化及使用     //type 1     //先声明map     var array map[string]string     //使用make函数创建一个非nil的map,nil map不能赋值     array=make(map[string]string)   

  • golang 文件Seek和Truncate的结合使用2022-03-20 12:35:16

    在需要分步写入整条信息时做回滚操作时使用 /* * @Description: * @Author: gphper * @Date: 2021-11-06 20:11:56 */ package main import ( "fmt" "io" "log" "os" ) func main() { f, err := os.OpenFile(`file.txt`, os.O_RDWR, os.ModeP

  • [算法] 剑指offer2 golang 面试题8:和大于或等于k的最短子数组2022-03-20 10:06:59

    [算法] 剑指offer2 golang 面试题8:和大于或等于k的最短子数组 题目1: 思路1: 滑动窗口 //思路: 滑动窗口 //指针 [left,right] 记录连续子数组的区间,并记录区间和 sum //if sum < target; right ++ ;sum += nums[right] //if sum >= target; 更新最小长度 minLen; sum -= n

  • Go语言自学系列 | golang包管理工具go module2022-03-20 10:04:03

    视频来源:B站《golang入门到项目实战 [2021最新Go语言教程,没有废话,纯干货!持续更新中...]》 一边学习一边整理老师的课程内容及试验笔记,并与大家分享,请移步至知乎网站,谢谢支持! 附上汇总贴:Go语言自学系列 | 汇总 - 知乎 (zhihu.com)https://zhuanlan.zhihu.com/p/484035621 Go mod

  • [Go] golang 替换组件包 更新 go.mod, go.sum 的方式2022-03-19 21:34:46

    转自:[Go] golang 替换组件包 更新 go.mod, go.sum 的方式 当我们不再使用某个包,或者包名变更时,是如何保证 go.mod 更新的。 只要代码中没有地方 import 使用到某个包了,我们运行: $ go mod tidy module 管理器会帮我们自动清理掉 go.mod, go.sum 中引入而未使用的包。

  • Golang中[] string和... string之间的区别2022-03-19 20:35:21

          [] string是一个字符串数组 ,从技术上讲,它是一个引用底层数组的切片 我们还使用... string作为参数 . 有什么不同?  参数语法生成可变参数 . 它将接受零个或多个 string 参数,并将它们作为切片引用 . 关于调用 f ,您可以使用以下语法将一片字符串传递给variadic参数:  

  • golang timer定时器2022-03-19 18:03:18

    Go语言的定时器实质是单向通道,time.Timer结构体类型中有一个time.Time类型的单向chan,源码(src/time/time.go)如下 type Timer struct { C <-chan Time r runtimeTimer 初始化 Timer 方法为NewTimer package main import ( "fmt" "time" ) func main() { t :

  • golang-设计模式-接口隔离原则-学习笔记2022-03-19 17:59:01

    ​【1】基本理论             OOP 中的接口,也可以理解为面向对象编程语言中的接口语法。接口的设计要尽量单一,不要让接口的实现类和调用者,依赖不需要的接口函数。 【2】功能描述         假设我们的项目中用到了三个外部系统:Redis、MySQL、Kafka。每个系统都对应一

  • golang 空结构体2022-03-19 16:01:34

    今天做力扣141题环形链表,碰到了空结构体这个问题,有点意思,记录一下 原文题解: func hasCycle(head *ListNode) bool { seen := map[*ListNode]struct{}{} for head != nil { if _, ok := seen[head]; ok { return true } seen[he

  • golang--ioutil包、遍历文件夹2022-03-19 15:58:17

    golang–ioutil包、遍历文件夹 package main import ( "fmt" "io/ioutil" "log" ) func main() { /* ioutil包: ReadFile()、WriteFile()、ReadDir()... */ //1.读取文件中的所有数据 //无需自己打开文件和关闭文件 //fileName:="F:/golang/aaa.txt" //d

  • 阿里云容器实习二面2022-03-19 15:05:52

    面试时间:2022.02.24 1. 自我介绍 2. 项目(论文和专利) 3. STL map底层 4. c++ oop特性 5. 详细说说继承和多态是怎么实现的? 6. c++ struct和class的区别 7. c++ 内存管理 8. c++ 多线程编程 9. c++ 怎么实现线程同步 10. 智能指针用过吗?shared_ptr原理 11. TCP三次握手 12

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有