golang
文章平均质量分 67
学习笔记
yjwlike
游泳的小前端
展开
-
golang 接口 interface
概述接口是一组方法的集合, 接口中只规范方法的书写, 不包括具体的实现, 我们可以把接口理解为一种行为, 比如现在有一个男人的接口, 男人接口中规范了一个看黑丝的方法, 假定我们定义了一个张三的变量和一个看黑丝的方法(recever是男人), 那么张三就实现了男人的接口图示代码演示 写一个简单的接口定义一个接口 接口中是方法, 所以我们要定义方法 方法需要接收者, 所以定义一个接收者package mainimport ( "fmt")// 定义一个 ..原创 2022-04-25 17:46:40 · 375 阅读 · 0 评论 -
golang method(方法)
目录概述语法func (recever Type) funcName(参数..) {}使用方法方法与函数总结概述在go中, 方法就是有接受者的函数, 只有接受者可以调用该函数, 在定义函数的时候把接受者放在函数名之前并指定类型即可.语法func (recever Type) funcName(参数..) {}使用方法接受者调用方法时分为两种情况: 值类型, 指针类型调用值类型方法时, 方法内接收到调用者的拷贝值, 修改拷贝值并不会影响...原创 2022-04-22 14:34:07 · 181 阅读 · 0 评论 -
slice 切片
什么是切片切片就是底层数组的一部分, 修改切片底层数组也会相应改变, 共享一个底层数据的不同切片都会更改, 而且切片的长度灵活多变, 切片是golang中复杂数据类型的一种, 具有长度和容量,分别通过len()和cap()来获取创建切片创建切片有三种方式, 一种通过底层数据创建, 一种直接创建切片, 一种是通过make函数1. 通过底层数组 (需要指定上界下界 example => array[1:4])切片的上下界有默认值, 上界为0 , 下界为数组或切片的长度pac原创 2022-04-21 11:01:39 · 797 阅读 · 0 评论 -
map 映射
目录创建map1. 字面量2. make 函数map的基本使用遍历mapmap零值map确实不能用==全等操作符来比较, 但是可以通过循环来比较总结map是golang中复杂数据的一种, 由key和value组成, 在golang中一个map就是对一个哈希表的引用, map定义时遵守map[T]V规则, 指定key和value的类型, key的类型必须支持==运算符来进行比较, value的类型则没有限制创建map1. 字面量一般情况下使用字面...原创 2022-04-20 15:24:45 · 1170 阅读 · 0 评论 -
struct 结构体
目录概述初始化结构体修改结构体结构体指针总结概述结构体是golang中复杂数据类型的一种, 和ts中为对象定义类型时极其相似, 结构体一般包含一组字段并指定类型, 在创建结构体实例时依据指定字段的类型创建即可, 若创建时没有给定字段, 则默认为其类型的零值初始化结构体初始化结构体大致分为三种情况, 完整定义, 简要定义, 未定义完整定义 就是把字段名加上 简要定义 就是省略字段名 自动按照结构体的字段顺序 依次赋值 未定义 则字段就是其类型的0值..原创 2022-04-18 16:59:01 · 452 阅读 · 0 评论 -
golang中的数组
数组1. 概念golang中的数组是具有固定长度及类型的序列集合2. 初始化数组(1) 字面量var arr [4]int = [4]int{1,2,3,4}(2) 字面量省略长度q := [...]int{1, 2, 3}3. 查看数组可以通过 for 循环的 range形式来查看数组func main() { var arr [4]int = [4]int{1,2,3,4} for i, v :=range arr { fmt.Printf..原创 2022-03-18 15:11:40 · 7168 阅读 · 0 评论 -
二、八、十、十六进制介绍及相互转换
进制进制就是一种进位计数制, 分为2,8,10,16进制, 2进制逢2进1, 8进制逢8进1,以此类推. 计算机采用的是2进制, 8进制使用较少, 十进制就是我们学过的数学, 十六进制通常用来表示颜色. golang中8进制以数字0开头表示, 16进制以0x/X表示进制之间的转换一. 其他进制转10进制转换规则: 从右往左开始, 数字 × n的(位数-1次方)(n代表的是进制数) 依次相加(1) 2转10例子: 1111001 转成 10进制 ?(2...原创 2022-02-15 11:11:39 · 2767 阅读 · 1 评论 -
go - fmt包中的扫描函数Scanf, Scan, Scanln的简单使用
目录前言一. 方法说明二、代码演示?总结前言当我们需要获取到用户输入的内容时,fmt包中的扫描函数是一个不错的选择, 扫描函数大致分为三种Scanf, Scan, Scanln三个函数, 他们都返回保存成功的数量和失败的原因, 只不过参数不同和一些使用细节不同一. 方法说明函数 参数 使用细节 返回值 Scanf 格式化字符串, 内存空间地址(可传多个) 传入的值必须满足格式的要求 保存成功的值数量, 保存失败的原因 ...原创 2022-01-24 11:39:56 · 1783 阅读 · 2 评论 -
go 中的指针
目录前言使用指针总结前言指针顾名思义就是指明方向的, golang中的指针同样也是如此, 指针是复杂数据类型中的一种, 它保存的是一块内存空间的引用地址, 也就是说指针的值是一个地址且必须是一个地址, 同时指针变量指向的类型必须和存储地址对应的变量类型一致, 变量的地址我们可以通过 & 符号打印出来使用指针概述: 指针存储同类型数据的地址, * pointerName 可以访问到值地址对应的数据, 可以进行修改操作package mainimport (原创 2022-01-21 10:07:26 · 880 阅读 · 0 评论 -
golang 的数据类型转换
目录前言一、什么是类型转换?二、类型转换演示0. strconv接收1. 数字类型2. 字符串类型总结前言类型转换是编程语言当中最为常见不过的数据操作, 像javascript中的类型转换可以通过函数显示的转换, 也可以通过操作符隐式转换, 但是在go中必须显示的转换, 小值可转大类型, 大值可转小类型一、什么是类型转换?类型转换是将数据转换成另一种类型输出出来, 不会变量的类型二、类型转换演示注意: 只有相同底层数据类型的双方才可以使...原创 2022-01-20 18:30:24 · 1978 阅读 · 0 评论 -
golang 中的基本数据类型
整数类型整数类型用来表示整数类型 符号 占用空间 表示范围 备注 int 有 32位系统 4B 64位系统 8B - 2^63 - 2^63-1 uint 无 32位系统 4B 64位系统 8B 0 - 2^64-1 rune 有 4B - 2^31 - 2^31 -1 rune === int32 byte 无 1B .原创 2022-01-19 18:06:31 · 474 阅读 · 0 评论 -
go 语言中变量的声明
目录局部变量的声明局部变量的同时声明全局变量的声明局部变量的声明(1) 完整声明 : var name 类型 = 值(2) 利用类型推导进行声明 : var name = 值(3) := 快速声明 : name := 值package mainimport "fmt"func main() { var n1 int = 10 var n2 = 20 n3 := 30 fmt.Println("n1:", n1, "n2:", n2, "n3:"..原创 2022-01-18 09:47:48 · 618 阅读 · 0 评论 -
go语言开发环境搭建
下载sdkDownloads - The Go Programming Languagehttps://golang.google.cn/dl/安装原创 2022-01-13 18:24:14 · 64 阅读 · 0 评论 -
编写第一个go程序
项目结构编写hello.gopackage mainimport "fmt"func main() { fmt.Println("hello,world")}运行go文件使用 go run 文件名编译成应用程序编译go 程序 使用命令 go build得到可执行的二进制文件 hello.exe控制台直接 执行hello.exe 即可输出内容至此第一个go程序就完成了知识点:go run 编译运行go文件, 不会输出...原创 2022-01-13 18:19:18 · 70 阅读 · 0 评论