2015-11-30 155 views
0

我想在Jtable中顯示char []的內容。顯然,Java不能用char來構造Jtable。由於我無法直接執行此操作,因此我試圖將char[]轉換爲表格的矢量。我嘗試了以下方法失敗。如何將Char []轉換爲矢量

char[] X; 

Vector<String> vx = new Vector<String>(Arrays.asList(x)); 
+0

回答後,我注意到你正在試圖使一個矢量''而不是'矢量'。你能澄清嗎?如果我以'{'a','b','c'}開頭,答案應該是「[」a「,」b「,」c「]還是'[」abc「]? –

+0

答案應該是[「a」,「b」,「c」]。我想將char []中的每個元素顯示爲Jtable中的自己的列。 – user5621297

+0

@ user5621297好的,我編輯了我的答案。 –

回答

0

您應該使用ArrayList而不是Vector。雖然沒有簡單的轉換方法。一種方法是

ArrayList<String> list = new ArrayList<String>(); 
for (char a : x) 
    list.add(String.valueOf(a)); 

Arrays.asList作品對象引用,不喜歡char元的數組的數組。

如果您使用的是Java 8,另一種方式是

List<String> list = IntStream.range(0, x.length) 
          .mapToObj(i -> String.valueOf(x[i])) 
          .collect(Collectors.toList()); 
+0

我試過這個,並得到「類型列表不是通用的,不能用參數」 – user5621297

+0

「0123」檢查你的「輸入」。它應該是'import java.util.List'。 –

+0

謝謝你指點幫助。我錯過了導入並修復了第一條錯誤消息。我試過修改後的第一種方法,我得到的唯一錯誤是「只能遍歷數組或java.lang.iterable的實例。」我應該用某個值替換「a」嗎? – user5621297