自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(18)
  • 收藏
  • 关注

原创 Go语言中的指针

本篇文章是通过学习[https://www.liwenzhou.com]所写,用于个人学习,资料整理,如有侵权请联系删除。指针任何程序数据载入内存后,在内部都有他们的地址,这就是指针。为了保存一个数据在内存中的地址,我们就需要指针变量。需要注意的是,变量值所在内存地址的值不等于该内存地址存储的变量值。Go语言中的指针不能进行偏移和运算,因此Go语言中的指针操作非常简单,我们只需要记住两个符号:&取地址、*根据地址取值指针地址和指针类型每个变量在运行时都拥有一个地址,这个地址代表变量在内存中

2021-05-14 10:18:31 203

原创 Go语言之sort

sort在之前的map中介绍过如何顺序遍历map,其中用到了sort包, sort包提供了排序切片和用户自定义数据集的函数。 在这里介绍一下sort包中常用的方法。//Sort排序data。它调用1次data.Len确定长度,调用O(n*log(n))次data.Less和data.Swap。本函数不能保证排序的稳定性(即不保证相等元素的相对次序不变)。func Sort(data Interface)//Stable排序data,并保证排序的稳定性,相等元素的相对次序不变。//它调用1次dat

2021-05-14 08:31:25 311

原创 一文掌握Go语言的map(底层原理+使用方法)

mapmap是一种无序的基于key-value的数据结构哈希表提到key-value就会想到哈希表,哈希表通常会有一堆桶来存储键值对,一个键值对来了,会选择一个桶。有两种方法比较常用:1.取模法 hash%m 用hash值与桶的个数m取模2.与运算 hash&(m-1) 哈希值与m-1进行与运算,若想运算结果在区间内,并且不会出现空桶则m必须是2的整数次幂如果之后还有键值对选择这个桶,就是发生了哈希冲突,解决冲突的办法,常用的有两种:1.开放地址法,找到被占用的桶后面没被占用的桶来

2021-05-11 17:31:52 787

原创 Go语言中的数组

Array数组是最常用的数据结构之一, 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化。数组声明var 数组变量名 [元素数量]T数组的长度必须是常量,并且长度是数组类型的一部分。一旦定义,长度不能变。 [5]int和[10]int是不同的类型。数组可以通过下标进行访问,下标是从0开始,最后一个元素下标是:len-1,访问越界(下标在合法范围之外),则触发访问越界,会panic。数组初始化初始化数组时可以使用初始化列表来设置数组元素的值。var testAr

2021-05-10 15:33:24 209 1

原创 Go语言中的类型转换以及strconv包的常用方法

类型转换Go语言中只有强制类型转换,没有隐式类型转换。该语法只能在两个类型之间支持相互转换的时候使用。强制类型转换的基本语法如下:T(表达式)其中,T表示要转换的类型。表达式包括变量、复杂算子和函数返回值等.strconv包strconv包实现了基本数据类型和其字符串表示的相互转换。Parse系列Parse类函数用于转换字符串为给定类型的值//返回字符串表示的bool值。它接受1、0、t、f、T、F、true、false、True、False、TRUE、FALSE;否则返回错误。fun

2021-05-10 15:09:20 159

原创 Go语言的string(底层结构+常用方法)

字符串Go语言中的字符串是通过UTF-8编码,字符串的值为双引号(")中的内容,可以在Go语言的源码中直接添加非ASCII码字符 。字符串底层结构是一个起始地址和长度(字节个数)字符串转义符Go 语言的字符串常见转义符包含回车、换行、单双引号、制表符等转义符含义/r回车符/n换行符/t制表符/’单引号/"双引号//反斜杠例如://打印一个Windows平台下的一个文件路径package mainimport ( "

2021-05-08 10:08:43 3090

原创 Go语言数据类型

Go语言有以下几种基本类型:整型,浮点型,布尔型,复数类型,字符串,byte&rune。还支持以下复合类型:错误类型,数组,切片,指针,字典,通道,结构体,接口。整型整型分为两类:有符号和无符号类型说明uint8无符号 8位整型 (0 到 255)uint16无符号 16位整型 (0 到 65535)uint32无符号 32位整型 (0 到 4294967295)uint64无符号 64位整型 (0 到 1844674407370955161

2021-05-08 10:05:24 116 2

原创 go语言中的类型别名和自定义类型

go语言中可以使用type关键字来定义类型,type有关类型方面有两种发放,一种是类型别名,一种是自定义类型。type myInt int //自定义类型type thisInt = int //类型别名自定义类型myInt是一种新的类型,具有int的特性类型别名是Go1.9版本添加的功能,本质上thisInt与int是同一个类型。相当于外号。例如byte与runetype byte = uint8type rune = int32区别package maintype myIn

2021-04-26 09:47:58 257

原创 go语言中的常量与变量

变量变量(varible)是所有编程语言中必不可少的组成元素,在我们需要去操作内存上的数据时,如果直接使用内存地址去操作会非常麻烦,所以便有了变量,变量其实是对一块数据存储空间的命名,通过引用变量名来使用这块存储空间。变量声明以var关键字开头,并且类型信息放在变量名之后,不需要分号结尾。可以单行声明,也可以多行声明。var num intvar ( name string //字符串 isOk bool //布尔型 nums [10]int //数组

2021-04-26 09:04:44 194

原创 go语言命令行操作

打开命令行输入go后我们可以看到:下面我们来一一解释每个命令的用法:go bugstart a bug report 该命令并不是debug,而是在命令行输入后进入到go的github主页,提交一份你发现的bug。go buildcompile packages and dependencies编译包和依赖项。go build 命令会编译当前目录下所有go文件。如果只编译main包,go build之后会在当前目录下生成一个可执行文件,如果想要在指定路径下生成可执行文件则使用go build

2021-04-25 21:41:55 1346

原创 一次看懂go语言中的slice(底层原理和常用操作)

写在前面本篇文章是通过学习https://www.liwenzhou.com/posts/Go/06_slice/#autoid-2-1-5和观看幼麟实验室的视频所写,用于个人学习,如有侵权请联系删除。正文:因为数组的长度是固定的并且数组长度属于类型的一部分,所以数组有很多的局限性 。例如:a := [3]int{1, 2, 3}数组a中已经有三个元素了,我们不能再继续往数组a中添加新元素了。所以便有了切片(slice)slice切片(Slice)是一个拥有相同类型元素的可变长度的序列。

2021-04-25 14:30:39 522 1

原创 go语言make()和new()的区别

new()func new(Type) *Type内建函数new分配内存。其第一个实参为类型,而非值。其返回值为指向该类型的新分配的零值的指针。make()func make(Type, size IntegerType) Type内建函数make分配并初始化一个类型为切片、映射、或通道的对象。其第一个实参为类型,而非值。make的返回类型与其参数相同,而非指向它的指针。其具体结果取决于具体的类型:slice:size指定了其长度。该切片的容量等于其长度。切片支持第二个整数实参可用来指定不同

2021-04-23 15:19:21 76

原创 go语言中的iota详解

iota是go语言的常量计数器,只能在常量的表达式中使用。​ 使用iota时只需要记住以下两点1.iota在const关键字出现时将被重置为0。2.const中每新增一行常量声明将使iota计数一次(iota可理解为const语句块中的行索引)。​ 使用iota能简化定义,在定义枚举时很有用。例子:const ( n1 = iota //0 n2 //1 n3 //2 n4 //3 )const ( n1 = iota //0

2021-04-23 11:34:47 9649 1

原创 如何打开mysql数据库

前提是你已经下载配置好自己的数据库需要的小伙伴留言邮箱给我第一种方法右击电脑开始选择计算机管理服务和应用程序——服务——找到自己电脑中的数据库启动第二种方法找到cmd右键以管理员身份运行输入net start mysql1221(自己数据库的名字)回车停止 输入net stop mysql1221(自己数据库的名字)回车...

2020-09-21 21:48:29 15953 2

原创 java连接mysql数据库——详细步骤(一看就会)

需要工具ecilpseMySQLMySQL数据库连接驱动:mysql-connector-java-5.1.16-bin.jar第一步新建一个类第二步把驱动复制到包中第三步添加路径打开MySQL数据库:计算机管理——服务和应用程序——服务——找到mysql运行运行代码即可连接到数据库package com.csdn.badam;import java.sql.*;public class DBHelper { //连接数据库的常量参数 //连接数据库的用户名

2020-09-21 21:36:15 882

原创 sql语言之排序查询

#进阶3:排序查询/*引入:select * from employees;语法:select 查询列表from 表【where 筛选条件】order by 排序列表 【asc | desc】特点:1、asc 升序,desc 降序,不写默认升序2、order by子句可以支持单个字段、多个字段、表达式、函数、别名3、order by子句一般放在查询语句的最后,limit子句...

2020-04-18 09:48:15 711 1

原创 sql语言之条件查询

#进阶二:条件查询/*语法:select查询列表from表名where筛选条件;分类:1.按条件表达式筛选条件运算符: > < = != <> >= <=2.按逻辑表达式筛选逻辑运算符: && || ! and or not3.模糊查询likebetween andinis null*/#1.按条件...

2020-04-18 08:48:24 314 1

原创 sql语言之基础查询

#进阶1:基础查询/*语法:select 查询列表from 表名;类似于:system.out.println()特点:1、查询列表可以是:表中的字段、常量值、表达式、函数2、查询的结果是一个虚拟的表格*/USE myemployees;#1.查询表中的单个字段SELECT last_name FROM employees;#2.查询表中的多个字段SELECTlast...

2020-04-18 08:45:18 150 1

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除