| @ -0,0 +1,13 @@ | |||||
| package main | |||||
| import "fmt" | |||||
| func main() { | |||||
| days := []string{ | |||||
| "Monday", "Tuesday", "Wednesday", "Thursday", | |||||
| "Friday", "Saturday", "Sunday"} | |||||
| days = append(days[len(days)-1:], days[:len(days)-1]...) | |||||
| fmt.Println(days) | |||||
| } | |||||
| @ -0,0 +1,11 @@ | |||||
| package main | |||||
| import "fmt" | |||||
| func main() { | |||||
| s := []string{"Good", "Good", "Bad", "Good", "Good"} | |||||
| s = append(s[:2], s[3:]...) | |||||
| fmt.Println(s) | |||||
| } | |||||
| @ -0,0 +1,21 @@ | |||||
| package main | |||||
| import "fmt" | |||||
| func getUsers() map[string]string { | |||||
| users := map[string]string{ | |||||
| "305": "Sue", | |||||
| "204": "Bob", | |||||
| "631": "Jake", | |||||
| } | |||||
| users["073"] = "Tracy" | |||||
| return users | |||||
| } | |||||
| func main() { | |||||
| fmt.Println("Users:", getUsers()) | |||||
| } | |||||
| @ -0,0 +1,47 @@ | |||||
| package main | |||||
| import ( | |||||
| "fmt" | |||||
| "os" | |||||
| ) | |||||
| func getUsers() map[string]string { | |||||
| return map[string]string{ | |||||
| "305": "Sue", | |||||
| "204": "Bob", | |||||
| "631": "Jake", | |||||
| "073": "Tracy", | |||||
| } | |||||
| } | |||||
| func getUser(id string) (string, bool) { | |||||
| users := getUsers() | |||||
| user, exists := users[id] | |||||
| return user, exists | |||||
| } | |||||
| func main() { | |||||
| if len(os.Args) != 2 { | |||||
| fmt.Println("User ID not passed") | |||||
| os.Exit(1) | |||||
| } | |||||
| userID := os.Args[1] | |||||
| name, exists := getUser(userID) | |||||
| if !exists { | |||||
| fmt.Printf("Passed user ID (%v) not found.\nUsers: \n", userID) | |||||
| for key, value := range getUsers() { | |||||
| fmt.Println(" ID:", key, "Name:", value) | |||||
| } | |||||
| os.Exit(1) | |||||
| } | |||||
| fmt.Println("Name:", name) | |||||
| } | |||||
| @ -0,0 +1,32 @@ | |||||
| package main | |||||
| import ( | |||||
| "fmt" | |||||
| "os" | |||||
| ) | |||||
| var users = map[string]string{ | |||||
| "305": "Sue", | |||||
| "204": "Bob", | |||||
| "631": "Jake", | |||||
| "073": "Tracy", | |||||
| } | |||||
| func deleteUser(id string) { | |||||
| delete(users, id) | |||||
| } | |||||
| func main() { | |||||
| if len(os.Args) != 2 { | |||||
| fmt.Println("User ID not passed") | |||||
| os.Exit(1) | |||||
| } | |||||
| userID := os.Args[1] | |||||
| deleteUser(userID) | |||||
| fmt.Println("Users:", users) | |||||
| } | |||||
| @ -0,0 +1,24 @@ | |||||
| package main | |||||
| import "fmt" | |||||
| type id string | |||||
| func getIDs() (id, id, id) { | |||||
| var id1 id | |||||
| var id2 id = "1234-5678" | |||||
| var id3 id | |||||
| id3 = "1234-5678" | |||||
| return id1, id2, id3 | |||||
| } | |||||
| func main() { | |||||
| id1, id2, id3 := getIDs() | |||||
| fmt.Println("id1 == id2: ", id1 == id2) | |||||
| fmt.Println("id2 == id3: ", id2 == id3) | |||||
| fmt.Println("id2 == \"1234-5678\"", string(id2) == "1234-5678") | |||||
| } | |||||
| @ -0,0 +1,51 @@ | |||||
| package main | |||||
| import "fmt" | |||||
| type user struct { | |||||
| name string | |||||
| age int | |||||
| balance float64 | |||||
| member bool | |||||
| } | |||||
| func getUsers() []user { | |||||
| u1 := user{ | |||||
| name: "Tracy", | |||||
| age: 51, | |||||
| balance: 98.43, | |||||
| member: true, | |||||
| } | |||||
| u2 := user{ | |||||
| age: 19, | |||||
| name: "Nick", | |||||
| } | |||||
| u3 := user{ | |||||
| "Bob", | |||||
| 25, | |||||
| 0, | |||||
| false, | |||||
| } | |||||
| var u4 user | |||||
| u4.name = "Sue" | |||||
| u4.age = 31 | |||||
| u4.member = true | |||||
| u4.balance = 17.09 | |||||
| return []user{u1, u2, u3, u4} | |||||
| } | |||||
| func main() { | |||||
| users := getUsers() | |||||
| for i := 0; i < len(users); i++ { | |||||
| fmt.Printf("%v: %#v\n", i, users[i]) | |||||
| } | |||||
| } | |||||