Re: [問題] 動態數量的 attribute ?

看板java作者 (null)時間17年前 (2008/04/24 11:17), 編輯推噓1(100)
留言1則, 1人參與, 最新討論串2/2 (看更多)
※ 引述《pcx86 (八爪牙)》之銘言: : 請問各位高手.. : 如果我在run time 時獲得一個int value. : 而在另一個class A 中,必須依據這個 int value來決定我的attribute數量. : 要在class A宣告變數裡就要依據這個int value來產生不同個數的attribute. : 例如: : value = 8, 則 class A 就要產生 8個不同的字串的attribute. : 要達到這種目的, 要用什麼方式來寫最恰當呢? 謝謝! 描述的不清楚, 所以答案變得很多可能性 CASE 1 :: 只需要產生空間 那麼 Attr[] attributes = new Attr[value]; 就已經滿足要求 CASE 2 :: 除了空間還需要有值 先做了1, 再填值 attributes[0] = "foo" attributes[1] = "bar" CASE 3 :: value n+1 的內容包含 value n 的內容 在 n 不大時,可以預先定義 List arrtibutes = new ArrayList(); attributes.add("v1"); attributes.add("v2"); attributes.add("v3"); attributes.add("v4"); attributes.add("v5"); attributes.add("v6"); .... 當 n = 1 時 arrtibutes.subList(0, 1) 當 n = 2 時 arrtibutes.subList(0, 2) CASE 4 :: value n+1 與 value n 無關時 Map attributes = new HashMap(); attributes.put(1, "v1"); attributes.put(2, "v2"); .......... 當 n = 1 時 attributes.get(1); 當 n = 2 時 attributes.get(2); -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 220.133.80.216

04/24 21:02, , 1F
感謝詳細的解答,這下子我清楚多了.
04/24 21:02, 1F
文章代碼(AID): #183_kyWN (java)
文章代碼(AID): #183_kyWN (java)