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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 田斌 中级黑马   /  2012-4-12 23:46  /  2510 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

int[] a = new int[2];
int[][] b = new int[3][4];

Object[] object = b; //这个可以
Object[] obj = a; //这个不行为什么

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

6 个回复

倒序浏览
确定没写错么。水平太浅看不懂啊。

int[] a = new int[2];
int[][] b = new int[3][4];

Object[] object = b; //这个应该不可以吧--->Object[][] object = b;认为这样比较靠谱
Object[] obj = a; //这个应该可以啊


不懂这个问题,有懂得也帮我解答下
回复 使用道具 举报
石好强 发表于 2012-4-12 23:54
确定没写错么。水平太浅看不懂啊。

int[] a = new int[2];

没写错,只是不好理解,看张老师的第24个高新视频
回复 使用道具 举报
Object[] object = b; //这个可以
Object obj = a; //改成这样就可以了
因为a是一维数组,里面装的是引用,所以要有Object类型,不能用数组Object[]。

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报
田斌 发表于 2012-4-13 00:06
没写错,只是不好理解,看张老师的第24个高新视频

啊哈,我还没学到。学到那仔细注意下:lol
回复 使用道具 举报
数组a是一维数组,它的元素是int整型数据,即基本数据类型;而数组b是二维数组,b[]的元素是数组对象。
你定义的obj、object是Object类型数组,所以它们的元素为引用类型,所以将a直接赋值给obj会报错。
你可以改为Object [] obj={a}或者Object obj=a

评分

参与人数 1技术分 +1 收起 理由
贠(yun)靖 + 1

查看全部评分

回复 使用道具 举报


一维数组即数组类型本来就是Object类型的嘛!二维数组是数组的数组,当然也应该是Object类型的数组才对!
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马