Object o=new Object[10]解释是下什么意见

fmwind 2012-07-30 01:22:32
在java中这样写没有问题Object o=new Object[10] 注意前面的Object没有中括号。
但0[0]="hello"就报错了了,另外
String str=new String[10]这是通不过。请明白的解释一下!
...全文
475 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
fmwind 2012-07-30
  • 打赏
  • 举报
回复
ok谢谢了,结贴了!
sdojqy1122 2012-07-30
  • 打赏
  • 举报
回复

public class Test11 {
public static void main(String args[]){
Object o=new Object[10];
((Object[])o)[0]="hello";
for(Object ooo:(Object[])o){
System.out.println(ooo);
}
}
}


7楼说法有误,这个是正确的。
sdojqy1122 2012-07-30
  • 打赏
  • 举报
回复 2
[Quote=引用 8 楼 的回复:]

引用 1 楼 的回复:
new出来的Object对象数组,但是同样属于对象
因为Object是任何对象的父类
你拿对象直接取小标当然是不行的,要数组才行.但是你声明的是对象,而不是对象数组
下面的String str=new String[10] 因为字符串数组已经不再是字符串
这个与Object不同 ,Object数组仍然是Object,但是String则不是

那我怎么输出里……
[/Quote]
这个你应该先把o强转 为
Object o=new Object[10];
Object[] oo = (Object[]) o;
然后foreach oo就好了。
fmwind 2012-07-30
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 的回复:]
new出来的Object对象数组,但是同样属于对象
因为Object是任何对象的父类
你拿对象直接取小标当然是不行的,要数组才行.但是你声明的是对象,而不是对象数组
下面的String str=new String[10] 因为字符串数组已经不再是字符串
这个与Object不同 ,Object数组仍然是Object,但是String则不是
[/Quote]
那我怎么输出里面的东西呢?比如我用一集合toArray()方法对进进行了赋值,通过foreach去输出o行不通,直接输入o也不行。该怎么输出。
sdojqy1122 2012-07-30
  • 打赏
  • 举报
回复
明显是1L说的~,怎么变成2L了。
Object o=new Object[10];
o[0]=new String("hello");
这样是不会报错的。 因为 o[0]的类型是object,所以你直接那么赋值因为是会报错的。
q6823221 2012-07-30
  • 打赏
  • 举报
回复
2L说的有道理
龙四 2012-07-30
  • 打赏
  • 举报
回复
正如2L所说的
Object o=new String[10]
是一个道理
昔久 2012-07-30
  • 打赏
  • 举报
回复
2L说的有道理,但是不知道是不是权威答案
如果这样声明可以的话,那这样做的好处是什么,还有就是这样是不是使得Java的语法不太规范
skyWalker_ONLY 2012-07-30
  • 打赏
  • 举报
回复
在java中数组也是对象,所以可以声明一个对象指向Object数组。但是O是一个对象,不是对象数组,所以引用就报错了。至于String类型当然不能指向String数组了
BadPattern 2012-07-30
  • 打赏
  • 举报
回复
二楼说的对,数组在java中也对象,也属Object类的子类
rorom 2012-07-30
  • 打赏
  • 举报
回复
new出来的Object对象数组,但是同样属于对象
因为Object是任何对象的父类
你拿对象直接取小标当然是不行的,要数组才行.但是你声明的是对象,而不是对象数组
下面的String str=new String[10] 因为字符串数组已经不再是字符串
这个与Object不同 ,Object数组仍然是Object,但是String则不是

62,614

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧