Maps and bookmarks app
This commit is contained in:
@@ -2,15 +2,64 @@ package main
|
|||||||
|
|
||||||
import "fmt"
|
import "fmt"
|
||||||
|
|
||||||
|
type bookmarkMap = map[string]string
|
||||||
|
|
||||||
func main() {
|
func main() {
|
||||||
m := map[string]string{
|
bookmarks := bookmarkMap{}
|
||||||
"PurpleSchool": "https://purpleschool.ru",
|
fmt.Println(bookmarks["a"])
|
||||||
|
fmt.Println("Приложение для закладок")
|
||||||
|
Menu:
|
||||||
|
for {
|
||||||
|
variant := getMenu()
|
||||||
|
switch variant {
|
||||||
|
case 1:
|
||||||
|
printBookmarks(bookmarks)
|
||||||
|
case 2:
|
||||||
|
bookmarks = addBookmark(bookmarks)
|
||||||
|
case 3:
|
||||||
|
bookmarks = deleteBookmark(bookmarks)
|
||||||
|
case 4:
|
||||||
|
break Menu
|
||||||
}
|
}
|
||||||
m["Google"] = "https://google.com"
|
|
||||||
m["Gmail"] = "https://gmail.com"
|
|
||||||
fmt.Println(m)
|
|
||||||
delete(m, "Gmail")
|
|
||||||
for _, v := range m {
|
|
||||||
fmt.Println(v)
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
func getMenu() int {
|
||||||
|
var variant int
|
||||||
|
fmt.Println("Выберите вариант")
|
||||||
|
fmt.Println("1. Посмотреть закладки")
|
||||||
|
fmt.Println("2. Добавить закладку")
|
||||||
|
fmt.Println("3. Удалить закладку")
|
||||||
|
fmt.Println("4. Выход")
|
||||||
|
fmt.Scan(&variant)
|
||||||
|
return variant
|
||||||
|
}
|
||||||
|
|
||||||
|
func printBookmarks(bookmarks bookmarkMap) {
|
||||||
|
if len(bookmarks) == 0 {
|
||||||
|
fmt.Println("Пока нет закладок")
|
||||||
|
}
|
||||||
|
for key, value := range bookmarks {
|
||||||
|
fmt.Println(key, ": ", value)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
func addBookmark(bookmarks bookmarkMap) bookmarkMap {
|
||||||
|
var newBookmarkKey string
|
||||||
|
var newBookmarkValue string
|
||||||
|
fmt.Print("Введите название: ")
|
||||||
|
fmt.Scan(&newBookmarkKey)
|
||||||
|
fmt.Print("Введите адрес: ")
|
||||||
|
fmt.Scan(&newBookmarkValue)
|
||||||
|
bookmarks[newBookmarkKey] = newBookmarkValue
|
||||||
|
return bookmarks
|
||||||
|
}
|
||||||
|
|
||||||
|
func deleteBookmark(bookmarks bookmarkMap) bookmarkMap {
|
||||||
|
|
||||||
|
var bookmarkToDelete string
|
||||||
|
fmt.Print("Введите название: ")
|
||||||
|
fmt.Scan(&bookmarkToDelete)
|
||||||
|
delete(bookmarks, bookmarkToDelete)
|
||||||
|
return bookmarks
|
||||||
|
}
|
||||||
|
|||||||
16
go-demo-3/maps/main.go
Normal file
16
go-demo-3/maps/main.go
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
package maps
|
||||||
|
|
||||||
|
import "fmt"
|
||||||
|
|
||||||
|
func main() {
|
||||||
|
m := map[string]string{
|
||||||
|
"PurpleSchool": "https://purpleschool.ru",
|
||||||
|
}
|
||||||
|
m["Google"] = "https://google.com"
|
||||||
|
m["Gmail"] = "https://gmail.com"
|
||||||
|
fmt.Println(m)
|
||||||
|
delete(m, "Gmail")
|
||||||
|
for _, v := range m {
|
||||||
|
fmt.Println(v)
|
||||||
|
}
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user