我對Java還沒有太多的經驗,我希望有人能夠引導我走向正確的方向,因爲現在我覺得我只是在靠牆撞我的頭。幫助兩個類之間的字段匹配
第一類稱爲MeasuredParams,它有40多個數字字段(高度,重量,腰圍,腕尺寸 - 有些是int,但大多是雙)。第二類是一個稱爲分類器的統計分類器。已經對MeasuredParams字段的子集進行了培訓。分類器已被訓練的字段的名稱按順序存儲在名爲reqdFields的數組中。
我需要做的是加載一個新的數組toClassify,存儲在來自MeasuredParams的字段中的值與reqdFields中的字段列表(包括順序)匹配。我可以對MeasuredParams類進行任何必要的更改,但我堅持使用Classifier。
我的蠻力方法是擺脫MeasuredParams中的字段,並使用arrayList,並將字段名稱存儲在Enum對象中以充當索引指針。然後遍歷reqdFields列表,每次一個元素,並在Enum對象中查找匹配的名稱,以在arrayList中找到正確的位置。將存儲在該位置的值加載到toClassify,然後繼續到reqdFields中的下一個元素。
我不確定我究竟該如何搜索Enum對象 - 如果字段名稱存儲在第二個arrayList中,會更容易。但是,這兩者之間的指數位置必須保持匹配,我又回到使用Enum。我認爲。整個下午我一直在圈子裏奔跑,我一直在想,必須有一個更簡單的方法來做到這一點。我現在只是卡住了,無法看到我已經開始的事情。
任何幫助將非常感激。非常感謝!
邁克爾
感謝您聲明映射爲Map而不是HashMap - 沒有足夠的示例代碼鼓勵使用接口!但我會考慮使用EnumMap而不是HashMap來提高效率。 – 2010-04-03 08:31:41