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

源代码

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("----所有祝福信息如下----\n\n")
    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("请输入要修改祝福的哪项信息:\n1.幸运儿;2.祝福者,3.祝福的话语,4.所有信息\n请输入序号:")
    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("输入错误,请重新输入!")
    }
}


参考资料:


曲鸟大佬的结合GO+的学生管理系统


写在最后


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


希望她可以一研为定????

上一篇:设计模式 策略-Strategy,装饰-Decorator,观察者-Observer


下一篇:oracle查询和断开用户session