大佬们,这个为什么会报错,把它传进入不是转成Object类型,下面转成Object转String怎么是报integer转String
public static void main(String[] args) {
List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
//list.add(10); // 会报类型转换异常(ClassCastException)
System.out.println(list);
for (Object obj1 : list) {
String str1 = (String)obj1;
System.out.println(str1);
}
你可以指定Object类
List<Object> list = new ArrayList<>(); list.add("a"); list.add(1);
import java.util.ArrayList;
import java.util.List;
public class ArrayListTestAsk {
public static void main(String[] args) {
List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
list.add(10); // 会报类型转换异常(ClassCastException)
System.out.println(list);
for (Object obj1 : list) {
String str1 = (String) obj1.toString();
System.out.println(str1);
}
}
}
[a, b, c, 10]
a
b
c
10
import java.util.ArrayList;
import java.util.List;
public class ArrayListTestAsk {
public static void main(String[] args) {
List list = new ArrayList();
list.add("a");
list.add("b");
list.add("c");
list.add(10); // 会报类型转换异常(ClassCastException)
System.out.println(list);
for (Object obj1 : list) {
String str1 = obj1.toString();
System.out.println(str1);
}
}
}
[a, b, c, 10]
a
b
c
10
for (Object obj1 : list) {
String str1 = (String)obj1;
System.out.println(str1);
} 因为你这个 强转 String str1 = (String)obj1,上面你写的 list.add(10) 10没法转成 字符串
大佬们,是为什么,不是如何解决。