2012-05-07 38 views
2

我無法通過簡單的for循環將數組加載到JFreeChart的DataSet中。例如,這將世界完美的罰款:JFreeChart將數組加載到數據集中

private PieDataset createDataset() { 
    DefaultPieDataset result = new DefaultPieDataset();  

    result.setValue("Linux", 29); 
    result.setValue("Mac", 20); 
    result.setValue("Windows", 51); 

    return result; 

} 

但是,如果我嘗試通過陣列中的每個元素循環實現以上陣列的代碼將無法正常工作:

private PieDataset createDataset() { 
    DefaultPieDataset result = new DefaultPieDataset(); 
    int[] array1 = new int[]{29,20,51}; 
    char[] array2 = new char[]{"Linux", "Mac", "Windows"}; 

    for (int i = 0; i < 3; i++) { 
     result.setValue(array2[i], array1[i]); 
    } 
    return result; 

} 

任何想法,我出錯?

回答

1

signature for DefaultPieDataset.setValue() is

setValue(java.lang.Comparable key, double value) 

所以我不認爲字符數組,允許所述陣列中的「Comparable」的價值觀。
String陣列可能(String實現Comparable接口,這就是爲什麼你的第一個例子工作)。

+0

神奇,謝謝你鏈接的文件也。 – ttff

相關問題