mirror of
https://github.com/unknwon/the-way-to-go_ZH_CN.git
synced 2025-08-12 05:11:49 +08:00
update book code
This commit is contained in:
41
eBook/examples/chapter_12/switch_input.go
Normal file
41
eBook/examples/chapter_12/switch_input.go
Normal file
@@ -0,0 +1,41 @@
|
||||
package main
|
||||
|
||||
import (
|
||||
"fmt"
|
||||
"os"
|
||||
"bufio"
|
||||
)
|
||||
|
||||
func main() {
|
||||
inputReader := bufio.NewReader(os.Stdin)
|
||||
fmt.Println("Please enter your name:")
|
||||
input, err := inputReader.ReadString('\n')
|
||||
|
||||
if err != nil {
|
||||
fmt.Println("There were errors reading, exiting program.")
|
||||
return
|
||||
}
|
||||
|
||||
fmt.Printf("Your name is %s", input)
|
||||
// For Unix: test with delimiter "\n", for Windows: test with "\r\n"
|
||||
switch input {
|
||||
case "Philip\r\n": fmt.Println("Welcome Philip!")
|
||||
case "Chris\r\n": fmt.Println("Welcome Chris!")
|
||||
case "Ivo\r\n": fmt.Println("Welcome Ivo!")
|
||||
default: fmt.Printf("You are not welcome here! Goodbye!")
|
||||
}
|
||||
|
||||
// version 2:
|
||||
switch input {
|
||||
case "Philip\r\n": fallthrough
|
||||
case "Ivo\r\n": fallthrough
|
||||
case "Chris\r\n": fmt.Printf("Welcome %s\n", input)
|
||||
default: fmt.Printf("You are not welcome here! Goodbye!\n")
|
||||
}
|
||||
|
||||
// version 3:
|
||||
switch input {
|
||||
case "Philip\r\n", "Ivo\r\n": fmt.Printf("Welcome %s\n", input)
|
||||
default: fmt.Printf("You are not welcome here! Goodbye!\n")
|
||||
}
|
||||
}
|
Reference in New Issue
Block a user