Long.ValueOf("str") 和Long.parseLong("str")真的有性能差别吗?

在SonarQube代码扫描中发现使用Long.ValueOf('str')可能存在Boxing/Unboxing性能问题。文章旨在探讨并验证Long.parseLong('str')与Long.ValueOf('str')在性能上的实际差异。
摘要由CSDN通过智能技术生成

问题


 用SonarQube做代码扫描,发现Boxing/Unboxing to  parse a primitive,tag标记得是性能问题。


 验证


    随后翻了源代码
    Long.valueOf(str)源码
public static Long valueOf(String s) throws NumberFormatException
    {
        return Long.valueOf(parseLong(s, 10));
    }


    paserLong()
    
    
public static long parseLong(String s, int radix)
              throws NumberFormatException
    {
        if (s == null) {
            throw new NumberFormatException("null");
        }
        if (radix < Character.MIN_RADIX) {
            throw new NumberFormatException("radix " + radix +
                                            " less than Character.MIN_RADIX");
        }
        if (radix > Character.MAX_RADIX) {
            throw new NumberFormatException("radix " + radix
评论 3
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值