- - PR -
FIFOを実現する方法について
1
投稿者 | 投稿内容 |
---|---|
|
投稿日時: 2005-04-26 23:52
1秒ごとにスレッド間でメモリ使用量の値を取得します。
10個の配列xがあるとします。 1秒ごとに取得した値をまず最初に、 x[0]に代入します。 次の1秒たったら、 x[0]の値をx[1]に移動し、今取得した値をx[0]に代入します。 これを10回繰り返していきます。 1秒目:x[0] └↓ 2秒目:x[0] x[1] └↓ └↓ 3秒目:x[0] x[1] x[2] 多少見にくいですが、こんな感じにです。 最終的には、x[0]からx[9]までの配列がすべて埋まります。 次の値を取得したときに、x[9]の値は押し出されて破棄されます。 x[0]〜x[8]の値が、1つずれて、x[1]〜x[9]になり、 そして今取得された値がx[0]に入ります。 すなわち、配列要素が10個しかないので、 古いもので10以上の要素は破棄されて行くようにしたいのです。 データ構造で言うFIFOをJAVAで実現したいのですが、 LISTなどを使おうとしましたが、いまいち的はずれな気がします。 手軽に実現できる方法がありましたらご教授願えないでしょうか? よろしくお願いします。 |
|
投稿日時: 2005-04-27 00:09
Java2 SE5.0には、そのものずばりなQueueというAPIが提供されていたように
思います。 それ以前のバージョンならLinkedListを使って、addLast(),removeFirst()メソッドを 利用して実装すれば良いかと。 ぱっと思いついたのは、そんなところです。 _________________ nec spe nec metu. ねく |
1