如何求golang字母表中的等效字符数
如何求golang字母表中字符的等效数 例如A==>1,B==>2你可以这样做:如何求golang字母表中的等效字符数,go,Go,如何求golang字母表中字符的等效数 例如A==>1,B==>2你可以这样做: func f(in rune) int { return int(in-'A'+1) } 理想情况下,您应该添加一些边界检查,以确保输入在预期范围内 func toNum(c rune) byte { return byte(c) - byte('A') + 1 } func main() { fmt.Print(toNum('A')) fmt.Print(toNum('B'))
func f(in rune) int {
return int(in-'A'+1)
}
理想情况下,您应该添加一些边界检查,以确保输入在预期范围内
func toNum(c rune) byte {
return byte(c) - byte('A') + 1
}
func main() {
fmt.Print(toNum('A'))
fmt.Print(toNum('B'))
fmt.Print(toNum('C'))
}
结果是:
123您只需获得每个字母的ascii码,然后从每个字母中减去64(因为65是ascii A) 我已将我的示例链接到Go游乐场:
当然,当您转到小写字母时会出现跳转(因为ascii跳转)。如果这很重要,您需要用另一个小写字母的偏移量来说明这一点。这是否回答了您的问题?不,我也看到了,但那不是我想要的。解决方案显示有从数字到字符的转换@jakub你的答案太棒了!
package main
import "fmt"
func main() {
numeral := alphaNum('B')
fmt.Println(numeral)
}
func alphaNum(letter rune) int {
char := int(letter)
char -= 64
return char
}