Integer.getInteger和Integer.valueOf、Integer.parseInt()的比较

Integer.getInteger和Integer.valueOf、Integer.parseInt()的使用

Integer类有三个静态的方法:getInteger、valueOf、parseInt() 这三个静态方法都是返回一个int的包装类——Integer对象

但是这三个方法有自己不同的作用,先开始很不明白,查阅API看到:

parseInt

public static int parseInt(String s, int radix) throws NumberFormatException
以第二个参数所指定基数将字符串参数分析为一个带符号的整数。除了第一个字符可以用 ASCII 的减号 '-' 来表示一个负值外,字符串中的字符必须是指定基数的数(由 Character.digit 是否返回非负值决定)。返回作为结果的整数值。

参数:
s - 包含整数的 String 。
radix - 使用的进制
返回值:
指定基数的字符串参数所表示的整数。
抛出: NumberFormatException
若该串不包含一个可分析的整数。

valueOf

valueOf
public static Integer valueOf(String s) throws NumberFormatException
返回初始化为指定 String 值的新的 Integer 对象。若该 String 不能作为 int 分析,则抛出异常。假设基数为 10 。

参数:
s - 待分析的字符串。
返回值:
新创建的 Integer ,将其初始化为字符串参数所表示的值。
抛出: NumberFormatException
如果该串不包含一个可分析的整数。

getInteger

Integer.getInteger(String)的功能是根据指定的名称得到系统属性的整数值。第一个参数将被认为是系统属性的名称。系统属性可以通过 System.getProperty(java.lang.String)方法访问得到。属性值字符串将被解释成一个整数,并且以表示这个值的Integer对象形式返回。可能出现的数字格式的详细说明可以在 getProperty 的定义说明里找到。

那么就让我来看看是否理解了: Integer.valueOf(String)方法假设String参数表达的是一个数值,会把该数值String转化成Integer。也就是说, Integer.valueOf("123") 得到一个Integer对象,其值是123。

Integer.getInteger(String)方法假设String参数是一个系统属性数值的名称,会读取该系统属性,然后把系统属性的值转换成一个数字。也就是说, Integer.getInteger("12345") 应该是得到 null(假设没有名为12345的系统属性

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值