A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 插兜 中级黑马   /  2015-11-18 00:09  /  5560 人查看  /  19 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

5黑马币
Integer i=new Integer("123")是怎么个情况,“123”不是字符串吗,字符串转成Integer不是Integer.parseInt()方法吗

最佳答案

查看完整内容

Integer类提供了多个方法,能在 int 类型和 String 类型之间互相转换 Integer(int value) 构造一个新分配的 Integer 对象,它表示指定的 int 值。 Integer(String s) 构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。

19 个回复

倒序浏览
Integer类提供了多个方法,能在 int 类型和 String 类型之间互相转换
Integer(int value)
          构造一个新分配的 Integer 对象,它表示指定的 int 值。
Integer(String s)
          构造一个新分配的 Integer 对象,它表示 String 参数所指示的 int 值。

点评

简单直观地学会了  发表于 2015-11-22 00:05
回复 使用道具 举报
本帖最后由 silentCat 于 2015-11-18 10:54 编辑

这是Integer类的构造方法之一,你可以看下API文档
回复 使用道具 举报
基本数据类型,是可以传递字符串类型的数字,记住,是"字符串类型的数字",你穿一个a123肯定报错!
比如你通过键盘录入一个数字,是字符串型的,你想转换成int类型的,就可以使用这个方法,有用请给币
回复 使用道具 举报
一个是静态函数,一个是构造函数,都可以创建对象。构造函数可以重载
回复 使用道具 举报
这是Integer构造方法之一  Integer提供多个方法 在String和Int直接可以相互转换  Integer.parseInt()方法可以将String转换成Int
回复 使用道具 举报
Integer i=new Integer("123");这个是 Integer 的构造方法使用,Integer.parseInt();是调用的方法,都可以使用,一般调用方法就可以,构造方法会产生新的对象,占用内存,用完就会生成垃圾,现在都是考虑如何节省资源,高效性!
回复 使用道具 举报
“123”是数字类型的字符串
回复 使用道具 举报
其中提供的类方法之一
回复 使用道具 举报
一个是构造方法,一个是方法。构造方法的目的是为了创建对象,里面的参数是顺带的。方法主要是为了功能。都可以实现的
回复 使用道具 举报
123的实例化整数类。包装类对于Integer在new个-128~127的数的时候,按普通的int数值,存的是数值了对于其他数,按新建对象处理,存的就是地址 网上的例子很多的,可以看看
回复 使用道具 举报
“123”是数字类型的字符串,
回复 使用道具 举报
Integer  包装int 基本数据类型的类   其他的 比如 char  long 等等 都有自己的类哦

你这个写法是利用了 Integer的构造方法  简单说就是  将“123” 作为形参传进来   这样做的作用是   可以利用Integer里面的方法对他进行其他 操作
比如 将“123”的字符串 转换为 int 类型的123  还有其他很多方法哦   API里面都有  要会看
回复 使用道具 举报
本帖最后由 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:54
15#
它是Integer的构造方法
回复 使用道具 举报
第一,纠正你一个错误。parseInt()是转换为int基本类型,而不是转换为一个Integer对象。
第二,public Integer(String s)  throws NumberFormatException 是Integer的一个构造方法,看源代码如下:
public Integer(String s) throws NumberFormatException {
        this.value = parseInt(s, 10);
    }
源代码里这个构造方法是调用了parseInt()方法的。
回复 使用道具 举报
首先parseInt()是转换为int基本类型,而不是转换为一个Integer对象。
然后public Integer(String s)  throws NumberFormatException 是Integer的一个构造方法,看源代码如下:
public Integer(String s) throws NumberFormatException {
        this.value = parseInt(s, 10);
    }
源代码里这个构造方法是调用了parseInt()方法的。
回复 使用道具 举报
虽然远离是构造方法,但是感觉跟强制转换一样,更深层次的应该是强制转换远离吧
回复 使用道具 举报
cj286 中级黑马 2015-12-26 16:11:46
19#
这是用构造将字符串转为Integer
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马