2015-10-20 88 views
-1

由於Java泛型,我正在進行鑄造。有人可以幫忙嗎?java泛型。 [Ljava.lang.Object;不能轉換爲[Ljava.lang.String;

Iterable<String> s = instance.outgoingEdges("Viseu"); 

    ArrayList<String> lf = new ArrayList<>(); 
    for (String x : s) { 
     String[] array = (String[])instance.endVertices(x); 
     for (Object v : array) { 
      System.out.println(v); 
     } 
    } 

的錯誤出現在以下行:

String[] array = (String[])instance.endVertices(x); 
+1

顯然endVertices不回你認爲它的確如此。展示下。 –

回答

0

問題是不是由仿製藥。

的問題很簡單,endVertices()是返回一個Object[],你可以不投的Object[]String[]。 Java不會讓你。

如果我理解代碼的意圖,那麼我認爲你應該改變:

String[] array = (String[]) instance.endVertices(x); 

Object[] array = (Object[]) instance.endVertices(x); 

或者只是

Object[] array = instance.endVertices(x); 
相關問題