_ C#でうまく書けなかったプログラム ちょっとした状態を持つフィルタ処理があって、Javaだったら次のように書くところだ。 interface Filter { Filter filtrate(string, Writer wtr); } static Filter state1 = new StateA(); static Filter state2 = new StateB(); ... Filter filter = state1; for (;;) { String s = ifile.readLine(); if (s == null) { break; } filter = filter.filtrate(s, wtr); } ... wtr.close(); 上でフィルタは受け取った行を処理し、次の状態を判断してそれを返す。 で、C#で作るのだから、クラスみたいな上っ面はい