我在将东西放入String()时有一些疑问

问题描述 投票:0回答:1

我正在看Go制作的Hangman游戏。

这里是函子代码的一部分,用于确定我所输入的字母是否在Hang子手的单词中。

func revealdashes(word string, guess string, dashes string) string {
    newdashes := ""
    for i, r := range dashes {
        if c := string(r); c != "_" {
            newdashes += c

        } else {
            var letter = string(word[i])
            if guess == letter {
                newdashes += guess
            } else {
                newdashes += "_"
            }
        }
    }
    return newdashes
}

据我了解,

for i,r :=range dashes{....

在此行中,i表示indexr表示RUNE对吗?我的问题是在下一行,

if c:=string(r); c !="_"{....

c:=string(r)是什么意思?我不确定此string(r)是指什么。

string go c-strings
1个回答
0
投票

[if <A>; <CONDITION> {...}表示先执行A,然后检查CONDITION,以便if c := string(r); c != "_"将r(从符文类型)转换为字符串类型,并将其值放入c。然后,如果c等于“ _”,继续。

在golang中,当您要将类型A的变量x转换为类型B时,只需执行B(x)

Here's关于字符串,字节和符文及其区别的不错的帖子。

© www.soinside.com 2019 - 2024. All rights reserved.