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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

©   /  2013-3-28 12:56  /  2795 人查看  /  17 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int[],char[],double[],byte[]的父类都是object,传参数传object类型就可以了
回复 使用道具 举报
丘凤光 发表于 2013-3-28 13:31
我是这么改的,但还是错误。

intanceof好像比较的是一个对象是不是属于某个类的吧。额,我也不太懂用int ...

arr=(int[])arr;
这句执行完arr还是object类型的,(int[])arr是(int[])类型的,又把他赋给了object类型的;
object类型中没有length
回复 使用道具 举报
丘凤光 发表于 2013-3-28 13:12
光传Object不行的

主要是怎么合理的转换类型,返回去时怎么返回和传进来的类型一样。

传参数用object,进入函数中在吧他转化成他原有的类型,进行处理
回复 使用道具 举报
丘凤光 发表于 2013-3-28 13:54
还是不行啊,换Object[]的话int[]传都传不进去。

int[]类型的是object的,int不是object的,
你把 int[] arr = new int[4];  
object[] obj = arr;这句相当于把int类型的赋值给object的
回复 使用道具 举报
丘凤光 发表于 2013-3-28 15:54
是这样么?我怎么好像记得比向东老师初级视频里说的是,arr是数组名称,它指向int[4]。Object[] obj=arr ...

赋得是内存地址,我的意思是
int[] arr = new int[4];  
object[] obj = arr;这句会报错,
看看这个http://bbs.itheima.com/thread-42601-1-1.html
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马