Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/38.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Go 若用户输入的数据不正确,应用程序必须重复该问题_Go_Command Line Interface - Fatal编程技术网

Go 若用户输入的数据不正确,应用程序必须重复该问题

Go 若用户输入的数据不正确,应用程序必须重复该问题,go,command-line-interface,Go,Command Line Interface,各位!!我是Golang的新手,我有个问题。 我有一些类似这样的代码(只是示例): 在用户输入正确的数据或终止进程之前,我不会再次显示“是或否”问题。您可以使用while循环(用于in-Go)连续循环,直到获得所需的输入 var keepRepeating = true scanner := bufio.NewScanner(os.Stdin) for keepRepeating { fmt.Println("Enter y/n") scanner.Scan()

各位!!我是Golang的新手,我有个问题。 我有一些类似这样的代码(只是示例):

在用户输入正确的数据或终止进程之前,我不会再次显示“是或否”问题。

您可以使用while循环(用于in-Go)连续循环,直到获得所需的输入

var keepRepeating = true

scanner := bufio.NewScanner(os.Stdin)

for keepRepeating {

    fmt.Println("Enter y/n")    
    scanner.Scan()
    if scanner.Text() == "y" {
        keepRepeating = false
    }
    if scanner.Text() == "n" {
        keepRepeating = false       
    }
}
您可以使用while循环(用于in-Go)连续循环,直到获得所需的输入

var keepRepeating = true

scanner := bufio.NewScanner(os.Stdin)

for keepRepeating {

    fmt.Println("Enter y/n")    
    scanner.Scan()
    if scanner.Text() == "y" {
        keepRepeating = false
    }
    if scanner.Text() == "n" {
        keepRepeating = false       
    }
}

谢谢大家!我这样做了:

for {
    fmt.Println("yes or no:")
    if _, err := fmt.Scan(&str); err != nil {
        panic(err)
    }
    if str == "no" {
        fmt.Println("enter again")
    } else {
        break
    }
}

谢谢大家!我这样做了:

for {
    fmt.Println("yes or no:")
    if _, err := fmt.Scan(&str); err != nil {
        panic(err)
    }
    if str == "no" {
        fmt.Println("enter again")
    } else {
        break
    }
}

你必须把这个块放在一个循环中。每次检查答案,直到循环可以退出。这里没有golang特定的问题,您必须将此块放入循环中。每次检查答案,直到循环可以退出。这里没有戈朗的具体问题