首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >golang 进制转换_java string转integer

golang 进制转换_java string转integer

作者头像
全栈程序员站长
发布2022-09-28 11:15:55
发布2022-09-28 11:15:55
6720
举报

大家好,又见面了,我是你们的朋友全栈君。

1- You may write your conversion function (Fastest):

代码语言:javascript
复制
func String(n int32) string {
    buf := [11]byte{}
    pos := len(buf)
    i := int64(n)
    signed := i < 0
    if signed {
        i = -i
    }
    for {
        pos--
        buf[pos], i = '0'+byte(i%10), i/10
        if i == 0 {
            if signed {
                pos--
                buf[pos] = '-'
            }
            return string(buf[pos:])
        }
    }
}

2- You may use fmt.Sprint(i) (Slow) See inside:

代码语言:javascript
复制
// Sprint formats using the default formats for its operands and returns the resulting string.
// Spaces are added between operands when neither is a string.
func Sprint(a ...interface{}) string {
    p := newPrinter()
    p.doPrint(a)
    s := string(p.buf)
    p.free()
    return s
}

3- You may use strconv.Itoa(int(i)) (Fast) See inside:

代码语言:javascript
复制
// Itoa is shorthand for FormatInt(int64(i), 10).
func Itoa(i int) string {
    return FormatInt(int64(i), 10)
}

4- You may use strconv.FormatInt(int64(i), 10) (Faster) See inside:

代码语言:javascript
复制
// FormatInt returns the string representation of i in the given base,
// for 2 <= base <= 36. The result uses the lower-case letters 'a' to 'z'
// for digit values >= 10.
func FormatInt(i int64, base int) string {
    _, s := formatBits(nil, uint64(i), base, i < 0, false)
    return s
}

以上内容出自: https://stackoverflow.com/questions/39442167/convert-int32-to-string-in-golang.

本人自用代码:

代码语言:javascript
复制
func Test_conver(t *testing.T) {
	var stairName string
	s := "test886400"
	id := int32(886400)
	iDStr := strconv.FormatInt(int64(id), 10)
	if strings.Contains(s, iDStr) {
		stairName = strings.TrimSuffix(s, iDStr)
	}

	fmt.Println("stairName:", stairName)
}

效果如下:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员栈长,转载请注明出处:https://javaforall.cn/193161.html原文链接:https://javaforall.cn

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2022年9月2日 下,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档