• 我的Go+语言初体验——祝福留言小系统,让她也可以感受到你的祝福


    ?? 小 木 再 探 G O + extcolor{Orange}{小木再探GO+} 小木再探GO+
    ?? 前 段 时 间 看 了 一 下 G O + , 也 成 功 将 环 境 等 一 系 列 搭 建 起 来 extcolor{green}{前段时间看了一下GO+,也成功将环境等一系列搭建起来} 前段时间看了一下GO+,也成功将环境等一系列搭建起来??
    ?? 相 信 有 很 多 小 伙 伴 刚 上 大 学 的 时 候 老 师 期 末 会 让 做 个 小 系 统 啥 的 extcolor{Brown}{相信有很多小伙伴刚上大学的时候老师期末会让做个小系统啥的 } 相信有很多小伙伴刚上大学的时候老师期末会让做个小系统啥的??
    ?? 那 么 这 不 正 好 是 个 小 素 材 可 以 学 习 嘛 , 最 近 呢 也 是 考 试 频 繁 啊 extcolor{green}{那么这不正好是个小素材可以学习嘛,最近呢也是考试频繁啊} 那么这不正好是个小素材可以学习嘛,最近呢也是考试频繁啊??
    ?? 四 六 级 , 考 研 , 期 末 等 等 ! ! ! 所 以 我 就 想 着 做 一 个 祝 福 留 言 系 统 extcolor{Brown}{四六级,考研,期末等等!!!所以我就想着做一个祝福留言系统} 四六级,考研,期末等等!!!所以我就想着做一个祝福留言系统??
    ?? 博 主 第 一 次 用 G O + 尝 试 做 系 统 , 还 请 各 位 大 佬 指 教 extcolor{Orange}{博主第一次用GO+尝试做系统,还请各位大佬指教} 博主第一次用GO+尝试做系统,还请各位大佬指教??

    GO+征文也快结束了,但是我希望这仅仅是个开始,而不是结束??

    祝福每一位都可以如愿,考试会的全对,蒙的全对??

    GO+祝福留言系统

    环境搭建

    之前讨论过关于GO+的环境搭建,这里就不在赘述了,如果有需要可以查看下面的文章。
    关于GO+的环境搭建

    GO+版的祝福语管理系统

    前期想法

    万变不离其宗,我们在有想法之后要做的就是构思,前期做好,后期就会变得非常的简单。
    每一条祝福语都拥有自己唯一的id,同样拥有祝福者幸运儿(被祝福的人),以及祝福的话语

    界面展示

    整体界面

    在这里插入图片描述

    增加祝福信息

    在这里插入图片描述
    每一次运行之后都会有提示框,可以继续进行操作
    在这里插入图片描述

    修改操作

    此处修改可以对单个信息,也可以对全部的信息进行修改,接下来我会依次给大家展示:
    > 1. 修 改 幸 运 儿 extcolor{OrangeRed}{–> 1.修改幸运儿} >1.修改幸运儿??
    在这里插入图片描述
    成功之后我们再查询:
    在这里插入图片描述
    > 2. 修 改 祝 福 者 : extcolor{OrangeRed}{–> 2.修改祝福者:} >2.修改祝福者:??
    在这里插入图片描述
    > 3. 修 改 祝 福 的 话 语 extcolor{OrangeRed}{–> 3.修改祝福的话语} >3.修改祝福的话语??
    在这里插入图片描述
    > 4. 修 改 全 部 extcolor{OrangeRed}{–> 4.修改全部} >4.修改全部??
    在这里插入图片描述

    删除操作

    为了更好的查看,我们再增加一个,然后进行删除操作
    > 增 + 查 : extcolor{OrangeRed}{–> 增+查:} >增+查:??
    在这里插入图片描述

    > 删 + 查 : extcolor{OrangeRed}{–> 删+查:} >删+查:??
    在这里插入图片描述

    退出

    在这里插入图片描述

    到此我们简单的祝福留言小系统就完成了??

    源代码

    package main
    
    import (
    	"fmt"
    	"os"
    )
    
    // 储存祝福信息
    var Mgr wishMessages
    
    //定义保存祝福信息的结构体
    type wishMessages struct {
    	wish map[uint]*wish
    }
    
    //定义祝福话语的结构体
    type wish struct {
    	id      uint   //祝福信息id
    	lucky   string //被祝福的幸运儿
    	wisher  string //祝福者
    	message string //祝福的话语
    }
    
    //查询所有祝福信息
    func (w wishMessages) showAllWishs() {
    	println("----所有祝福信息如下----
    
    ")
    	println("ID", "幸运儿", "祝福者", "祝福的话")
    	for i, v := range w.wish {
    		println(i, v.lucky, v.wisher, v.message)
    	}
    	println("--------------------------")
    }
    
    //增加祝福信息
    func (w wishMessages) addWish() {
    	println("请输入新祝福id:")
    	var (
    		wishID      uint
    		wishLucky   string
    		wishWisher  string
    		wishMessage string
    	)
    	fmt.Scanln(&wishID)
    	_, ok := w.wish[wishID]
    	if ok {
    		println("此祝福话语存在!")
    		return
    	}
    	println("请输入幸运儿:")
    	fmt.Scanln(&wishLucky)
    	println("请输入祝福者:")
    	fmt.Scanln(&wishWisher)
    	println("请输入新的祝福的话语:")
    	fmt.Scanln(&wishMessage)
    	w.wish[wishID] = &wish{wishID, wishLucky, wishWisher, wishMessage}
    }
    
    //修改祝福的信息
    func (w wishMessages) updateWish() {
    	println("请输入要修改祝福话的id:")
    	var (
    		wishID      uint
    		wishLucky   string
    		wishWisher  string
    		wishMessage string
    		num         int
    	)
    	fmt.Scanln(&wishID)
    	_, ok := w.wish[wishID]
    	if !ok {
    		println("查无此祝福话!")
    		return
    	}
    	println("请输入要修改祝福的哪项信息:
    1.幸运儿;2.祝福者,3.祝福的话语,4.所有信息
    请输入序号:")
    	fmt.Scanln(&num)
    	switch num {
    	case 1:
    		println("请输入要修改幸运儿:")
    		fmt.Scanln(&wishLucky)
    		w.wish[wishID].lucky = wishLucky
    	case 2:
    		println("请输入要修改祝福者:")
    		fmt.Scanln(&wishWisher)
    		w.wish[wishID].wisher = wishWisher
    	case 3:
    		println("请输入要修改祝福的话语:")
    		fmt.Scanln(&wishMessage)
    		w.wish[wishID].message = wishMessage
    	case 4:
    		println("请输入要修改幸运儿:")
    		fmt.Scanln(&wishLucky)
    		println("请输入要修改祝福者:")
    		fmt.Scanln(&wishWisher)
    		println("请输入要修改祝福的话语:")
    		fmt.Scanln(&wishMessage)
    		w.wish[wishID] = &wish{
    			lucky:   wishLucky,
    			wisher:  wishWisher,
    			message: wishMessage,
    		}
    	}
    	println("----修改成功----")
    }
    
    //删除祝福的信息
    func (w wishMessages) delWish() {
    	println("请输入要修改祝福话语的id:")
    	var wishID uint
    	fmt.Scanln(&wishID)
    	delete(w.wish, wishID)
    	println("----删除成功----")
    }
    
    Mgr = wishMessages{
    	wish: make(map[uint]*wish, 100),
    }
    println("-------------欢迎使用祝福信息管理系统-------------")
    for {
    	println(`
    		1.查看所有祝福信息
    		2.增加祝福信息
    		3.修改祝福信息
    		4.删除祝福信息
    		5.退出程序
    ------------------------------------------
    	`)
    	println("请输入上面对应的序号来选择对应的操作:")
    	var wishID uint
    	fmt.Scanln(&wishID)
    	switch wishID {
    	case 1:
    		Mgr.showAllWishs()
    	case 2:
    		Mgr.addWish()
    	case 3:
    		Mgr.updateWish()
    	case 4:
    		Mgr.delWish()
    	case 5:
    		os.Exit(1)
    	default:
    		println("输入错误,请重新输入!")
    	}
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41
    • 42
    • 43
    • 44
    • 45
    • 46
    • 47
    • 48
    • 49
    • 50
    • 51
    • 52
    • 53
    • 54
    • 55
    • 56
    • 57
    • 58
    • 59
    • 60
    • 61
    • 62
    • 63
    • 64
    • 65
    • 66
    • 67
    • 68
    • 69
    • 70
    • 71
    • 72
    • 73
    • 74
    • 75
    • 76
    • 77
    • 78
    • 79
    • 80
    • 81
    • 82
    • 83
    • 84
    • 85
    • 86
    • 87
    • 88
    • 89
    • 90
    • 91
    • 92
    • 93
    • 94
    • 95
    • 96
    • 97
    • 98
    • 99
    • 100
    • 101
    • 102
    • 103
    • 104
    • 105
    • 106
    • 107
    • 108
    • 109
    • 110
    • 111
    • 112
    • 113
    • 114
    • 115
    • 116
    • 117
    • 118
    • 119
    • 120
    • 121
    • 122
    • 123
    • 124
    • 125
    • 126
    • 127
    • 128
    • 129
    • 130
    • 131
    • 132
    • 133
    • 134
    • 135
    • 136
    • 137
    • 138
    • 139
    • 140
    • 141
    • 142
    • 143
    • 144
    • 145
    • 146
    • 147
    • 148

    参考资料:
    曲鸟大佬的结合GO+的学生管理系统

    写在最后

    希望大家都可以愿望成真,如果想对他人祝福,欢迎留言??

    希望她可以一研为定??

    “我的Go+语言初体验” | 征文活动进行中…

    先自我介绍一下,小编13年上师交大毕业,曾经在小公司待过,去过华为OPPO等大厂,18年进入阿里,直到现在。深知大多数初中级java工程师,想要升技能,往往是需要自己摸索成长或是报班学习,但对于培训机构动则近万元的学费,着实压力不小。自己不成体系的自学效率很低又漫长,而且容易碰到天花板技术停止不前。因此我收集了一份《java开发全套学习资料》送给大家,初衷也很简单,就是希望帮助到想自学又不知道该从何学起的朋友,同时减轻大家的负担。添加下方名片,即可获取全套学习资料哦

  • 相关阅读:
    ROS2 学习笔记(三) 工作空间与功能包的创建
    【解包裹】基于GPSA和AIA实现相位提取附matlab代码
    快速掌握Reactor Core实现响应式编程
    关于vector的迭代器失效
    习题2.18
    报表控件Stimulsoft Report中的 自定义QR 码教程
    LeetCode - #89 格雷编码
    configure生成的makefile中工具的版本,可以直接修改为自己使用的版本
    Sanitizers 系列之 address sanitizer 原理篇
    python——装饰器深入研究(一)
  • 原文地址:https://blog.csdn.net/m0_67401153/article/details/126081265