無料で使えるシステムトレードフレームワーク「Jiji」 をリリースしました!

・OANDA Trade APIを利用した、オープンソースのシステムトレードフレームワークです。
・自分だけの取引アルゴリズムで、誰でも、いますぐ、かんたんに、自動取引を開始できます。

PushbackReader

PushbackReaderを使うと、Readerで読み込んだ文字を再度Readerに戻す(読まなかったことにする)ことができます。以下は簡単な利用例。連続する文字を1つにまとめつつ、出力します。

// PushbackReader を作成
PushbackReader reader = new PushbackReader(
    new StringReader( "abccdeeefgg" ));

// Readerから1文字ずつ取り出して出力する。
// 同じ文字が2つ連続する場合は、1つにまとめる。
for ( int i=reader.read(); i>0; i=reader.read() ) {
    // 次の文字を読む。
    int next = reader.read();

    // 今と次が同じなら読み飛ばす。
    // そうでなければ読まなかったことにする。
    if ( i != next ) {
        reader.unread( next ); // 読んだのを元に戻す。
    }
    System.out.println((char)i); // 文字を出力
}

実行結果です。

a
b
c
d
e
e
f
g

1.1の頃からあるクラスらしいので、いまさら感満載ですが。それにしても、作る前にググって良かった。