List list = new ArrayList();
list.add(11111111);
System.out.println((String)list.get(0));
是数字,不能强转字符串
System.out.println(list.get(0)。toString());
public boolean add(E e) {
ensureCapacity(size + 1); // Increments modCount!!
elementData[size++] = e;
return true;
}
arrayList 底层添加方法告诉我们,放入什么类型的数据就是什么类型;因此你若放入1111,因为1111是放入基本数据类型,
基本数据类型会因为java的 自动装箱 - 特性,把 1111 转化成 Integer类型的数据存入到list中;
现在你再去用Integer数据类型强行转为String类型,那么报错是肯定的了;
再者: 你int类型强转String报错也是必须的;
觉得你还是要好好理解各数据类型的定义;
String.valueOf()即可