douhuanglou1445 2016-01-22 17:56
浏览 75
已采纳

在golang中将子字符串转换为int

I have this variable:

danumber := "542353242"

and want to extract a character from the string and operate with it as a number. Tried this:

int(danumber[0])

but it doesn't seem to work.

  • 写回答

1条回答 默认 最新

  • duangai1941 2016-01-22 17:58
    关注

    What your expression gives you is the character code for the digit. To convert the character to the character's value, subtract 0's character code from it:

    int(danumber[0] - '0') // in your example, this is: 53 - 48
    

    If you want to convert multiple digits, I would recommend using the strconv package:

    number, err := strconv.Atoi(danumber[0:2]) // convert first two characters to int
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?