Java中 String s1 = arrayList.get(0); 语句报错 Type mismatch: cannot convert from Object to String

请问arrayList.add()中是存放的是对象吗?就是说arrayList中的的元素是是对象类型?其他类型不可以吗?

第1个回答  2012-03-26
可以的 你的arrayList可以定义泛型 例如 ArrayList<String> list=new ArrayList<String>();追问

ArrayList arrayList = new ArrayList();
出现错误:Syntax error, parameterized types are only available if source level is 1.5 or greater
怎么解决啊···面对小白提问题,一定要有耐心啊,呵呵

本回答被提问者采纳
第2个回答  2012-03-26
一切皆是对象
如:
arrayList.add("123");
arrayList.add(123);
那么arrayList[0],arrayList[1]都是对象
你如果想取出来,用toString()方法
String str = arrayList.get(0).toString();本回答被网友采纳
第3个回答  2012-03-26
可以是其他类型的 不过你要在 定义 list的时候 <类型> 说明 再去的时候就不用转了 否则 就认为是Object 要转
第4个回答  2012-03-26
add()里面可以放任何对象,java集合是可以存储任何类型的对象的,你试试
String s1 = (String)arrayList.get(0);
这个应该就可以了
第5个回答  2012-03-26
你可以强制类型转换啊,String s1 = (String)arrayList.get(0)追问

莫非arrayList中存放的都是对象,而不能是简单数据类型,每次get出来都要使用相应的强制类型转换?

追答

一切皆Object,强制类型转换也就是从抽象到具体,吧对象明确化

Type mismatch: cannot convert from BigDecimal to List<>错误如何解决...
给list加一个泛型就可以了。这样:List<Channel> list = this.channelManager.getChannelListByFather(Integer.valueOf(block.getContent()));>").toString()).append(ch.getName()).append("");}

怎么解决 Type mismatch: cannot convert from element type Object...
buffer.append("").toString()).append(ch.getName()).append("");}

将字符串数组放进ArrayList中,怎么判断长度
(String)a.get(i).length();

MyEclipse编译报错:throw new Error("Unresolved compilation problem...
转换错误cannot convert from FinanceBean to List<FinanceBean> 猜测问题应该出在这句ftList = this.aphFinanceLogic.getQuarterLine(fBean);请调试一下出错的行号

怎么改Shu shu=shudao.selAllShu()这句?
shudao.selAllShu();得到的是一个List,按List的方法拿出里边的数据。比如 shudao.selAllShu().get(0);如果拿全部可以遍历,大小是.size();

Collection接口中的toArray()用法-一道JAVA编程
class ABC { public static void main(String args[]) { Collection<String> c=new ArrayList<String>();Collection<String> c2=new ArrayList<String>();c.add("I");c.add("Love");c.add("you");c.add(",");System.out.println(c);c2.addAll(c);c2.add("中国");c.add("!");...

相似回答