- 博客(15)
- 收藏
- 关注
原创 go学习之判断零值
go判断零值第七天:go判断对象是否为零值文章目录go判断零值如果一个对象与指针相关,才能用nil判断如果一个对象与指针相关,才能用nil判断这里与指针相关的对象包含map,slice,chan,和一些使用指针指向的对象, var arr []int var m map[int]int var c chan int var x *message var me message var s string if arr == nil { fmt.Println("arr = nil"
2022-04-15 08:48:05
946
原创 go语言基础
go语言基础第六天:go模块管理和面向对象实现文章目录go语言基础前言一、go模块导入1.模块内包导入2.模块外包导入3.外部网址第三方sdk包导入二、go面向对象实现1.封装实现2.继承实现3.多态实现前言go1.11之后go默认使用go mod管理依赖包模块,模块管理主要分为三种,一种是模块内包的导入,第二种是模块外包的导入,第三种是外部网站第三方sdk导入。面向对象包含封装,继承,多态三种概念,go语言同样可以利用其语法实现面向对象。一、go模块导入1.模块内包导入模块目录为/mo
2022-04-12 22:37:03
415
原创 go基础之多协程开发
go语言生态学习第五天:go多协程开发学习文章目录go语言生态学习前言一、协程goroutine1.协程运行模型2.协程使用方法二、协程通信channel1.channel初始化2.channel使用方法3.有无缓存channel同步异步问题前言go以协程实现了并发操作,协程又叫goroutine,是一个比线程更小的运行单位,只在用户态下运行,通信方式为channel。go项目在1.11版本之后均开始使用go mod方式管理项目模块和不同模块之间的调用。一、协程goroutine1.协程运
2022-04-11 09:43:14
1059
原创 go语言基础之切片和map的基本使用方法
go语言生态学习第四天:slice切片学习,map使用学习文章目录go语言生态学习前言一、切片的使用方法1.切片初始化方法2.追加和赋值过程二、map学习和使用1.初始化过程2.增删改查前言go语言常用或者说能用的容器就这两个,go语言的切片是相当于Java语言的动态数组,其底层就是一个结构体,结构体保存了指向一个底层数组的指针,所以其值传递过程其实就是一个指针复制的过程,同样的map也类似一个切片,同样值传递的过程就是一个指针复制的过程。在go语言中,只有切片,map,channel的赋值过程表
2022-04-07 22:22:08
743
原创 golang基础入门之变量常量初始化,import导包学习
golang语言生态学习第三天:golang基础入门之变量常量初始化,import导包学习文章目录golang语言生态学习前言一、golang变量初始化方法1.单变量初始化2、多变量初始化二、使用步骤1、普通常量声明2、itoa高阶常量声明三、import导包相关知识1、如何导入一个$GOPATH/src目录下自己开发的包2、如何导入一个第三方包3、导包过程4、导包进阶前言首先介绍变量四种初始化方法,然后介绍常量初始化方法,最后介绍import导包相关知识。一、golang变量初始化方法1
2022-04-05 22:52:06
1072
1
原创 linux下搭建golang开发环境
golang语言生态学习第二天:linux环境下golang开发环境搭建提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录golang语言生态学习前言一、golang源码包下载二、安装golang源码包1.解压源码包到根目录2.配置环境变量3.开发golang项目前言提示:这里可以添加本文要记录的大概内容:在Linux环境下开发golang项目工程,首先应该知道golang源码包的下载安装方法,然后配置相关环境变量,最后开发golang项目。提示:以下是本篇文章正文
2022-04-05 22:13:46
2928
原创 golang语言生态学习
golang学习第一天:golang本地缓存简要总结和协程相关知识汇总文章目录golang学习前言一、golang本地缓存总结1.本地缓存技术需求2.选择开源项目还是自己开发3.开源项目选择二、协程相关知识汇总1.进程与线程的关系2.线程与协程的关系总结前言1、golang本地缓存总结2、golang协程知识汇总一、golang本地缓存总结1.本地缓存技术需求(1)是否支持数据过期处理(2)数据回收策略(3)数据灾容处理机制2.选择开源项目还是自己开发github拥有众多现成的本
2022-03-25 22:41:51
696
原创 java线程池学习使用
java线程池学习使用java线程池介绍newCachedThreadPoolnewFixedThreadPoolnewScheduledThreadPoolnewSingleThreadExecutornewFixedThreadPool实例分析线程池终止java线程池介绍当有多个任务需要执行时,通常会想到使用多线程技术,但是如果维护这些线程,更好的来管理和使用这些线程很重要。java线程池如同一个工厂,可以对线程进行管理。java有四种类型的线程池,newCachedThreadPool,newFi
2020-12-01 20:01:27
89
原创 isc-dhcp dhcpv6配置
isc-dhcp dhcpv6配置编译安装isc-dhcpdhcpv6配置设置网卡ipv6地址启动停止dhcpv6服务编译安装isc-dhcp1、首先去官网下载isc-dhcp (https://www.isc.org/dhcp/)2、解压文件 tar –xzf isc-dhcp.tar.gz3、编译安装软件makemake installdhcpv6配置创建文件 /etc/dhcp/dhcpd6.conf,配置如下:max-lease-time 3600;default-leas
2020-10-27 17:40:20
2558
原创 centos8下配置dhcp v4或v6服务器
centos8下配置dhcp v4或v6服务器安装dhcp-server配置ipv4服务器配置ipv6服务器安装dhcp-servercentos7及以前版本的操作系统使用命令:yum install dhcpcentos8使用命令:yum install dhcp-server配置ipv4服务器1、设置centos操作系统所在服务器的ip地址,注意选择特定的网卡,比如我要设定的网卡名称是eno2,这里设置的ip地址与后面配置文件中的ip地址要同段,否则会报错:进入这个文件夹选择你的网卡
2020-09-23 09:24:48
1908
原创 HashSet如何保证数据对象不一致,附带总结hashCode和equals函数
HashSet如何保证数据对象不一致,附带总结hashCode和equals函数基本概念add函数Set存储对象的hashcode函数和equals函数重写一些总结基本概念Set接口继承自Collection接口,我们都知道Set只能存储单一对象,所以重复加入相同的对象,Set只会存储一个对象,而且Set存储的对象是无序的。其保证存储的集合对象不同的方法主要来自于hashCode和equals...
2020-04-10 23:43:17
369
原创 二维区域和检索 - 矩阵不可变
leetcode 304. 二维区域和检索 - 矩阵不可变问题解题思路代码总结问题给定一个二维矩阵,计算其子矩形范围内元素的总和,该子矩阵的左上角为 (row1, col1) ,右下角为 (row2, col2)。子矩阵左上角 (row1, col1) = (2, 1) ,右下角(row2, col2) = (4, 3),该子矩形内元素的总和为 8。解题思路当时没想到证明自己还是有许多动态...
2020-04-07 21:39:55
230
原创 小顶堆解决丑数 II
leetcode 264. 丑数 II问题解题思路小顶堆解法代码总结问题编写一个程序,找出第 n 个丑数。丑数就是只包含质因数 2, 3, 5 的正整数。1, 2, 3, 4, 5, 6, 8, 9, 10, 12 是前 10 个丑数。1 是丑数。n 不超过1690。解题思路暴力解法 ,创建一个动态数组存储已经找到的丑数,数字从1开始每次加1,判断是否能被2,3,5整除,除数是否...
2020-04-01 21:00:01
166
原创 一个类是否可以作为其相同类的域
一个类是否可以作为其相同类的域两种情况两种情况当一个类作为其相同类的域时,如果这个类并没有初始化如下图所示,当初始化一个类对象时,未初始化的类作为一个域并未被初始化,也未曾指向一个DfsCode对象,故并不会发生循环初始化对象,导致栈溢出,而一旦外部类被初始化,第二种情况下,内部类会循环初始化类对象,导致栈溢出。...
2019-12-21 16:58:42
161
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人