我有一個readData()
函數,它讀取文件返回一些不同的解析數據對象。眼下,中readData()
返回類型是Object[]
:Java:使用一個函數返回幾個不同類型的值
Object[] data = readData();
MyGenome genome = data[0];
Species[] breeds = data[1];
//etc
這種感覺很尷尬。有沒有更好的方法來返回這些數據?我不希望有像readGenome()
和readSpecies()
這樣的單獨函數,因爲這需要對文件迭代兩次。另外,我寧願在一個函數中包含所有數據的收集。
類似的問題:返回兩個字符串之間的匹配至少有四個字符的功能:
public int[][] findMatch(String g0, String g1) { /* cool stuff */ }
//...
int[][] bounds = findMatch("ACOIICOCOCICOICA", "AOCCCCCCICCIIIIIOIAOCICOICOICA");
其中bounds[0][0]
是綁定在G0左側,bounds[0][1]
是綁定在G0權,bounds[1][0]
是g1上的左邊界等,這也感覺有點尷尬。如果不連續查找密鑰,很難用結果編碼。
文件中對象的順序是否始終相同?像一個基因組,然後是5種物種?或者它取決於某些東西?你怎麼知道數據[0]是MyGenome和數據[1]是物種 – 2009-10-01 01:01:19