你需要的是TreeMap的容器物件。
TreeMap<String,Obj> myContainer=new TreeMap<>();
for(int i=0;i<=10;i++){
Obj o=in.readobject();
myContainer.put("o"+i,o);
}
取出名稱為o2的物件就是
Obj o=myContainer.get("o2");
put(key,value); key放你的名稱 value就是整個物件
通常名稱都是要有意義的,例如學號、姓名
用隨機數也要知道這個名稱才能取
Java的object本身就是一個記憶體位置
在一些Design Pattern的書,還有更多的作法,
不過建議你先熟悉Colletion的操作。
※ 引述《ray01080 (阿勒)》之銘言:
: 大家好 java新手發問 如有蠢問題請多包涵>"<
: 我現在在寫一個servlet的程式,然後遇到一個問題
: 今天有一個接收器Object obj=in.readobject負責把物件讀進來
: 進來以後我把它offer到一個priority queue裡面
: 然後它就重覆接收->送到queue這個動作
: 但是假設我送了10個進queue以後
: 我想要更改我送進去queue裡面其中一個物件的其中一樣數值(假設是int)
: 我不知道要怎麼抓到我之前送進去的那個物件(obj會被後面接收的洗掉)
: 自己是有想一個方法,但是不確定可行性或有沒有這種函式之類的
: 因為java有幫obj設定它的名稱
: 假設這程式叫Receiver.java
: 然後接收器每接一個obj就會幫它取名叫Receiver$obj@69e4fede (@後面為隨機數字/英文
: )
: 那我有辦法紀錄這個字串以後用這個字串來找到我的這個物件嗎
: 或是有更方便的方法 不好意思麻煩各位大大賜教了= ="