03 2022 档案
发表于 2022-03-11 00:08阅读:54评论:0推荐:0
摘要:main package main import "github.com/项目-家庭收支记账软件/面向对象/utils" func main() { utils.NewFamilyAccount().MainMenu() } familyAccount package utils import "f
阅读全文 »
发表于 2022-03-10 23:38阅读:65评论:0推荐:0
摘要:package main import "fmt" func main() { //声明一个变量,保存接受用户输入的选项 var key int //声明一个变量,控制是否退出for循环 loop := true //定义账户余额 balance := 10000.00 //每次收支的金额 mone
阅读全文 »
发表于 2022-03-10 20:32阅读:71评论:0推荐:0
摘要:package main import "fmt" type Usb interface { Start() Stop() } //手机 type Phone struct { Name string } //相机 type Camera struct { Name string } //计算机 t
阅读全文 »
发表于 2022-03-10 18:23阅读:148评论:0推荐:0
摘要:package main import "fmt" //继承与接口之间的区别 //猴子生来会爬树,为继承,猴子学会游泳,为接口 /* 当A结构体继承了B结构体,那么A结构体就自动继承了B结构体的字段和方法,并且可以直接使用 当A结构体需要扩展功能,同时不希望去破坏继承关系,则可以去实现某个接口即可,
阅读全文 »
发表于 2022-03-10 17:57阅读:41评论:0推荐:0
摘要:package main import ( "fmt" "math/rand" "sort" ) //Hero结构体 type Hero struct { Name string Age int } //Hero结构体切片 type HeroSlice []Hero //实现interface接口
阅读全文 »
发表于 2022-03-10 16:32阅读:78评论:0推荐:0
摘要:package main import "fmt" /* interface类型可以定义一组方法,但是这些不需要实现 并且interface不能包含任何变量 到某个自定义类型要使用的时候,再根据具体情况把这些方法写出来 基本语法 type 接口名 interface{ method1(参数列表)返回
阅读全文 »
发表于 2022-03-10 12:32阅读:72评论:0推荐:0
摘要:package main import "fmt" type Usb interface { Start() Stop() } //手机 type Phone struct { } //相机 type Camera struct { } //计算机 type Computer struct { }
阅读全文 »
发表于 2022-03-10 11:19阅读:35评论:0推荐:0
摘要:package main import "fmt" type testA struct { Name string age int } func (testa *testA) SayOk() { fmt.Println("testA Sayok", testa.Name) } func (testa
阅读全文 »
发表于 2022-03-10 10:20阅读:278评论:0推荐:0
摘要:package main import ( "fmt" ) //继承可以解决代码复用,让编程更加接近人类思维 //当多个结构体存在相同属性和方法时,可以从这些结构体中抽象出结构体,在该结构体中定义这些相同的属性和方法 //其他结构体不需要重新定义这些属性和方法,只需要嵌套一个匿名结构体即可 //也就
阅读全文 »
发表于 2022-03-09 14:49阅读:112评论:0推荐:0
摘要:main.go package main import ( "fmt" "github.com/面向对象编程/面向对象编程思想/封装/model" ) /* 封装(encapsulation)就是把抽象出的字段和字段的操作封装在一起, 数据被保护在内部,程序的其他包只有通过被授权的操作,才能对字段进
阅读全文 »
发表于 2022-03-09 13:57阅读:31评论:0推荐:0
摘要:package main import "fmt" //定义结构体的时候,实际上就是把一类失误的共有属性和行为提取出来,形成一个物理模型 //定义一个Account结构体 type Account struct { AccountNo string Pwd int Balance float64 }
阅读全文 »
发表于 2022-03-09 13:34阅读:30评论:0推荐:0
摘要:访问私有字段 main.go package main import ( "fmt" "github.com/面向对象编程/工厂模式/model" ) func main() { // var stu = model.Student{ // Name: "tom", // Score: 78.9,
阅读全文 »
发表于 2022-03-08 22:09阅读:64评论:0推荐:0
摘要:应用一 package main import "fmt" /* 1.声明(定义)结构体,确定结构体名 2.编写结构体的字段 3.编写结构体的方法 案例 1.编写一个Student结构体,包含name、gender、age、id、score字段,分别为string、string、int、int、fl
阅读全文 »
发表于 2022-03-08 21:22阅读:67评论:0推荐:0
摘要:package main import "fmt" type Person struct { Name string } //函数 //对于普通函数,接受者为值类型时,不能将指针类型的数据直接传递,反之亦然 func test01(p Person) { fmt.Println(p.Name) }
阅读全文 »
发表于 2022-03-08 16:46阅读:61评论:0推荐:0
摘要:package main import "fmt" //1.编写一个结构体(MethodUtils),编写一个方法,方法不需要参数,在方法中打印一个10*8的矩形,在main方法中调用 //2.编写一个方法,提供m和n两个参数,方法中打印m*n的矩形 //3.编写一个方法,计算该矩形面积(可接收长l
阅读全文 »
发表于 2022-03-06 17:36阅读:52评论:0推荐:0
摘要:package main import ( "encoding/json" "fmt" ) type Point struct { x int y int } type Rect struct { leftUp, rightDown Point } type Rect2 struct { leftU
阅读全文 »
发表于 2022-03-06 14:36阅读:23评论:0推荐:0
摘要:package main import "fmt" //如果用户名存在就将密码改为888888,不存在就新增该用户信息 func main() { user := make(map[string]map[string]string, 10) user["smith"] = make(map[stri
阅读全文 »
发表于 2022-03-06 14:15阅读:47评论:0推荐:0
摘要:package main import ( "fmt" ) type Stu struct { name string age int grade float64 } func main() { //map是引用类型,遵守引用类型值传递的机制,在一个函数中接受map,修改后会直接修改原来的map /
阅读全文 »
发表于 2022-03-06 13:51阅读:1290评论:0推荐:0
摘要:package main import ( "fmt" "sort" ) func main() { //golang中没有一个专门的方法针对map的key进行排序 //golang中的map默认为是无序的,也不是按照添加的顺序存放的,每次遍历得到的输出可能不一样 //golang中的map排序,是
阅读全文 »
发表于 2022-03-06 13:36阅读:478评论:0推荐:0
摘要:package main import "fmt" func main() { /* 切片的数据类型如果是map,则成为slice of map map切片,使用map的个数就可以动态变化 */ monster := make([]map[string]string, 2) if monster[0
阅读全文 »
发表于 2022-03-03 11:38阅读:57评论:0推荐:0
摘要:package main import "fmt" //map的增删改查 func main() { school := make(map[string]string, 10) school["no1"] = "清华大学" //如果没有key,则为增添,如果key已经存在,则为修改 school["
阅读全文 »
发表于 2022-03-02 21:25阅读:473评论:0推荐:0
摘要:package main import ( "fmt" ) //map是key-value数据结构,又称为字段或者关联数组。类似其他编程语言的集合。 //keykey是什么类型 //golang中的map的key可以是很多种类型,比如bool,数字,string,指针,channel,还可以是只包含
阅读全文 »
发表于 2022-03-01 17:50阅读:105评论:0推荐:0
摘要:package main import "fmt" func main() { //for遍历 arr := [3][3]int{{1, 2, 3}, {4, 5, 6}, {7, 8, 9}} for i := 0; i < len(arr); i++ { for j := 0; j < len(
阅读全文 »
发表于 2022-03-01 16:19阅读:76评论:0推荐:0
摘要:package main import "fmt" func main() { //二分法查找思路,目标数findVal /* arr是一个有序数组,并且是从小到大排序 先找到中间的下标middle=(leftindex + rightindex) / 2,然后让中间下标的值和findVal比较 如
阅读全文 »
发表于 2022-03-01 15:40阅读:29评论:0推荐:0
摘要:package main import ( "fmt" ) func main() { //白眉鹰王、金毛狮王、紫衫龙王、青翼蝠王 //顺序查找:从键盘输入一个名称,判断数组中是否包含此名称 name := []string{"白眉鹰王", "金毛狮王", "青翼蝠王", "紫衫龙王"} var n
阅读全文 »
发表于 2022-03-01 15:08阅读:105评论:0推荐:0
摘要:package main import "fmt" //1.内部排序 //将需要处理的所有数据都加载到内部存储器中进行排序(交换式排序法、选择式排序法和插入式排序法) //2.外部排序 //数据量过大,无法全部加载到内存中,需要借助外部存储进行排序(合并排序法和直接合并排序法) func main(
阅读全文 »
发表于 2022-03-01 13:10阅读:35评论:0推荐:0
摘要:package main import "fmt" func main() { fbnSlice := fbn(10) fmt.Println(fbnSlice) } func fbn(n int) []uint64 { fbnslice := make([]uint64, n) fbnslice[
阅读全文 »
发表于 2022-03-01 12:55阅读:46评论:0推荐:0
摘要:package main import "fmt" func main() { //string底层是一个byte数组,因此string也可以进行切片处理 str := "hello@stargazer" //使用切片获取stargazer slice := str[6:] fmt.Println(
阅读全文 »