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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 闫江龙 黑马帝   /  2011-12-17 18:20  /  3690 人查看  /  5 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

本帖最后由 闫江龙 于 2011-12-18 07:55 编辑

Integer a=new Integer("123");
int num=a.intValue():
第一行a已经是123了  第二行在intvalue() 得出的还是123啊? 举这个例子是什么意思?第二句不是废话吗?

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

5 个回复

倒序浏览
第一行a是一个对象,指向123,第二行是把a的值转换为基本数据类型,赋给num,num=123
回复 使用道具 举报
祁焱 黑马帝 2011-12-17 18:38:06
藤椅
在Integer a=new Integer("123")中直接输出a,a对象会自动拆箱,取出对象中的数据输出。
而int num=a.intValue():是利用对象的方法取出对象的值。
我的理解是两者在获取值没什么区别,前者可以理解为隐性,后者可以理解成显性调用。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
Integer a=new Integer("123");
int num=a.intValue():
第一行a已经是123了  第二行在intvalue() 得出的还是123啊? 举这个例子是什么意思?第二句不是废话吗?
这里是告诉从a中得到数据值的一种方法,我们打印的时候,默认把Integer的值转换成字符串打印,但是楼主想下,a可以直接赋值给num吗?num跟a根本就不是同一类型的,没办法直接赋值,所以,这句话是有用的,这句话调用了Integer中提供的静态方法来获取a的数据

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
intValue() 是以int 类型返回该 Integer 的值。
int 是基本数据类型,Integer  是对象类型。
也可以这样写:
                Integer i=123;
                int num=i;
自动装箱拆箱。

评分

参与人数 1技术分 +1 收起 理由
admin + 1

查看全部评分

回复 使用道具 举报
谢谢楼上各位 明白了 就是一个是对象一个是数据  其实拿里面的数值来用的话  没什么区别   果然是废话啊
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马