2014-04-03 102 views
1

我試圖在java中強制dijkstra算法。我嘗試在文本文件中獲取節點名稱。我分配了一個數組節點名稱叫[]節點如何將字符串分配給for循環中的頂點?

我在項目中添加的頂點與此代碼手動:

Vertex a = new Vertex("a"); 

我想有一個從文本文件assing頂點名稱爲循環使用此代碼

for(int i=0; i< numOfNodes; i++){ 

     Vertex nodes[i] = new Vertex(nodes[i]); 

    } 

,但它給了我這個錯誤

Multiple markers at this line 
- The constructor Vertex(Vertex) is undefined 
- Type mismatch: cannot convert from Vertex to 
Vertex[] 
- Syntax error on token "i", delete this token 

我怎樣才能解決這個問題?

+0

強烈建議您發佈更多的代碼。目前還不清楚發佈的代碼試圖做什麼。 – Deadron

回答

0

您目前正在努力創建與我承擔VertexStringnodes[i]

Vertex nodes[i] = new Vertex(nodes[i]); 

但在謊言你的問題。您正嘗試將Vertex對象插回到String陣列中。您需要一個Vertex對象的替代陣列。

1

這是無效的語法;您需要定義Vertex陣列以外的for循環,並具有存儲在其他地方的文件的內容,即

String text_input[] = new String[num_lines_in_file]; 
// Read the text file and store inputs in above array... 
// ... 

Vertex nodes[] = new Vertex[text_input.length]; 
for(int i=0; i< nodes.length; i++){ 
    nodes[i] = new Vertex(text_input[i]); 
}