//Exception in thread "main" java.lang.ClassCastException: java.lang.Character can
//not be cast to java.lang.String
}
}
复制代码
为什么?作者: 郭黎明 时间: 2014-3-21 21:52
因为你的 List<String> list = new ArrayList<String>()中带有泛型<String>,List中方法 add(E e)也是带着泛型的,你的list.get(x)结果应该为String类型,但你因为传入的是character,所以add之后是list中的类型为Character,两者需要强制转换,因为object是任何类型的父类,所以你搞成Object obj = list.get(0),就没问题。如果你把 List<String> list = new ArrayList<String>()换为 List<Character> list = new ArrayList<Character>()就可以不需要转换。