为什么不能转型?Vector<Food> v = new Vector<Food>();
v.add(new Food(“apple1”));
v.add(new Food(“apple2”));
.
.
.JList list = new JList(v);
Food[] foods= ((Food[])list.getSelectedValues());
v.add(new Food(“apple1”));
v.add(new Food(“apple2”));
.
.
.JList list = new JList(v);
Food[] foods= ((Food[])list.getSelectedValues());
返回的是 Object[]
然后 取出来 一个一个的转 Food 才可以
因为 Food[] 并不是 Object[] 的子类啊。
所以不能转。
为何单一就可以???
getSelectedValue这是单一的
getSelectedValues这是数组的.Object[] o=new Object[5];
String[]ft = (String[])o;//不可以
Object[] tt =new String[]{"uu","yy"};
String[]f = (String[])tt;//可以得到Object[]后,最一个一个转回来吧
例如:
Object o = new Object();
String s = o;
这个可以通过编译。
但是下面这样就不能通过编译。
Object[] o = new Object[]();
String[] s = 0;
这样就不能编译通过的