黑马程序员技术交流社区

标题: Integer i=new Integer("123")是怎么个情况 [打印本页]

作者: 插兜    时间: 2015-11-18 00:09
标题: Integer i=new Integer("123")是怎么个情况
Integer i=new Integer("123")是怎么个情况,“123”不是字符串吗,字符串转成Integer不是Integer.parseInt()方法吗

作者: 传奇查    时间: 2015-11-18 00:09
Integer类提供了多个方法,能在 int 类型和 String 类型之间互相转换
Integer(int value)
          构造一个新分配的 Integer 对象,它表示指定的 int 值。
Integer(String s)
          构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。
作者: silentCat    时间: 2015-11-18 10:53
本帖最后由 silentCat 于 2015-11-18 10:54 编辑

这是Integer类的构造方法之一,你可以看下API文档
作者: 许鹏飞    时间: 2015-11-18 10:54
基本数据类型,是可以传递字符串类型的数字,记住,是"字符串类型的数字",你穿一个a123肯定报错!
比如你通过键盘录入一个数字,是字符串型的,你想转换成int类型的,就可以使用这个方法,有用请给币
作者: 李娜    时间: 2015-11-18 12:25
一个是静态函数,一个是构造函数,都可以创建对象。构造函数可以重载
作者: 袁有福123    时间: 2015-11-18 22:28
这是Integer构造方法之一  Integer提供多个方法 在String和Int直接可以相互转换  Integer.parseInt()方法可以将String转换成Int
作者: 黑马,你的骄傲    时间: 2015-11-18 23:37
Integer i=new Integer("123");这个是 Integer 的构造方法使用,Integer.parseInt();是调用的方法,都可以使用,一般调用方法就可以,构造方法会产生新的对象,占用内存,用完就会生成垃圾,现在都是考虑如何节省资源,高效性!
作者: chenxianzai    时间: 2015-11-18 23:47
“123”是数字类型的字符串
作者: 触底反弹    时间: 2015-11-19 02:29
其中提供的类方法之一
作者: liuqiang11164    时间: 2015-11-19 22:08
一个是构造方法,一个是方法。构造方法的目的是为了创建对象,里面的参数是顺带的。方法主要是为了功能。都可以实现的
作者: geqiandesiyu    时间: 2015-11-19 22:16
123的实例化整数类。包装类对于Integer在new个-128~127的数的时候,按普通的int数值,存的是数值了对于其他数,按新建对象处理,存的就是地址 网上的例子很多的,可以看看
作者: ^_^笨和尚^_^    时间: 2015-11-19 23:33
“123”是数字类型的字符串,
作者: mark_time    时间: 2015-11-20 15:45
Integer  包装int 基本数据类型的类   其他的 比如 char  long 等等 都有自己的类哦

你这个写法是利用了 Integer的构造方法  简单说就是  将“123” 作为形参传进来   这样做的作用是   可以利用Integer里面的方法对他进行其他 操作
比如 将“123”的字符串 转换为 int 类型的123  还有其他很多方法哦   API里面都有  要会看
作者: 1018chenhaiyang    时间: 2015-11-20 19:04
本帖最后由 1018chenhaiyang 于 2015-11-20 19:06 编辑

你说的是Integer类的成员方法,可以实现将字符串转换成包装类,
但是  Integer i=new Integer("123");  这种写法同样可以实现。
Integer类有两个构造方法,一个构造方法里面传的参数是String s,另一个是 int value; 这个可以查Inteder类的Api

作者: zhuwenjia    时间: 2015-11-20 22:14
它是Integer的构造方法
作者: JadynAi    时间: 2015-11-20 22:49
第一,纠正你一个错误。parseInt()是转换为int基本类型,而不是转换为一个Integer对象。
第二,public Integer(String s)  throws NumberFormatException 是Integer的一个构造方法,看源代码如下:
public Integer(String s) throws NumberFormatException {
        this.value = parseInt(s, 10);
    }
源代码里这个构造方法是调用了parseInt()方法的。
作者: jlcclidong    时间: 2015-11-20 23:00
首先parseInt()是转换为int基本类型,而不是转换为一个Integer对象。
然后public Integer(String s)  throws NumberFormatException 是Integer的一个构造方法,看源代码如下:
public Integer(String s) throws NumberFormatException {
        this.value = parseInt(s, 10);
    }
源代码里这个构造方法是调用了parseInt()方法的。
作者: 约吗^_^    时间: 2015-11-20 23:43
虽然远离是构造方法,但是感觉跟强制转换一样,更深层次的应该是强制转换远离吧

作者: cj286    时间: 2015-12-26 16:11
这是用构造将字符串转为Integer




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2