Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/go/7.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
String 如何检查用户是否在Go中输入了空值?_String_Go_File Io_Null - Fatal编程技术网

String 如何检查用户是否在Go中输入了空值?

String 如何检查用户是否在Go中输入了空值?,string,go,file-io,null,String,Go,File Io,Null,如何检查用户是否输入了空值,以及将代码放在何处?注意-我已经试过检查长度=0和='',但它们似乎不起作用 请建议一种替代方法。谢谢 返回一个字符串,该字符串也包含delimeter,在本例中为换行符\n 如果用户没有输入任何内容,只需按enter键,ReadString()的返回值将为“\n”,因此您必须将结果与“\n”进行比较,以检查是否存在空输入: reader := bufio.NewReader(os.Stdin) fmt.Print("Enter text: ") text, _ :=

如何检查用户是否输入了空值,以及将代码放在何处?注意-我已经试过检查长度
=0
=''
,但它们似乎不起作用

请建议一种替代方法。谢谢

返回一个
字符串,该字符串也包含delimeter,在本例中为换行符
\n

如果用户没有输入任何内容,只需按enter键,
ReadString()
的返回值将为
“\n”
,因此您必须将结果与
“\n”
进行比较,以检查是否存在空输入:

reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter text: ")
text, _ := reader.ReadString('\n')
fmt.Println("Hello",text)
一个更好的替代方法是使用删除前导和尾随的空格字符(包括换行符;如果有人输入2个空格并按Enter键,则该名称没有意义,此解决方案也会将其过滤掉)。如果调用了
strings.TrimSpace()
previor,则可以将其与空字符串进行比较:

reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter text: ")
text, err := reader.ReadString('\n')
if err != nil {
    panic(err) // Don't forget to check and handle returned errors!
}

if text == "\n" {
    fmt.Println("No input!")
} else {
    fmt.Println("Hello", text)
}
返回一个
字符串,该字符串也包含delimeter,在本例中为换行符
\n

如果用户没有输入任何内容,只需按enter键,
ReadString()
的返回值将为
“\n”
,因此您必须将结果与
“\n”
进行比较,以检查是否存在空输入:

reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter text: ")
text, _ := reader.ReadString('\n')
fmt.Println("Hello",text)
一个更好的替代方法是使用删除前导和尾随的空格字符(包括换行符;如果有人输入2个空格并按Enter键,则该名称没有意义,此解决方案也会将其过滤掉)。如果调用了
strings.TrimSpace()
previor,则可以将其与空字符串进行比较:

reader := bufio.NewReader(os.Stdin)
fmt.Print("Enter text: ")
text, err := reader.ReadString('\n')
if err != nil {
    panic(err) // Don't forget to check and handle returned errors!
}

if text == "\n" {
    fmt.Println("No input!")
} else {
    fmt.Println("Hello", text)
}
我认为“输入空值”没有意义。Null表示没有输入。在流输入中,最接近的是0长度的字符串,但正如您所知,
与Go(或几乎任何语言)中的
nil
不同。我认为“输入空值”没有意义。Null表示没有输入。在流输入中,最接近的是0长度的字符串,但正如您所知,
与Go(或几乎任何语言)中的
nil
不同。