LinkedList<Integer> adjMatrix[] = new LinkedList[10];
Object[] temp = (Object[]) adjMatrix;
LinkedList<String> string = new LinkedList<String>();
string.add("abc");
temp[3] = string;
System.out.println(adjMatrix[3].get(0));
//prints abc
//====================================================
LinkedList<String>[] stringList = new LinkedList[10];
Object[] oa = (Object[]) stringList;
LinkedList<Integer> listInt = new LinkedList<Integer>();
listInt.add(new Integer(3));
oa[1] = listInt;
System.out.println(stringList[1].get(0));
// gives ClassCastException java.lang.Integer cannot be cast to java.lang.String
Run Code Online (Sandbox Code Playgroud)
我很困惑第一种情况下究竟发生了什么,一个整数接受了一个字符串值,但在第二种情况下没有发生.有什么想法吗?