私はオブジェクトの配列(タブ[])を作成しましたが、フィルタリングしてフィールドの1つを使って印刷する必要があります(例:ob.a> 1ならば印刷します)。リストと述語インタフェースのすべてのエントリを通過するIteratorインタフェース、ArrayIteratorを作成しました。これは私のFilteringIteratorのコンストラクタです:私の「基本」イテレータを使用してすべてのエントリを表示しますフィルタイテレータをJavaで実装するには?
private final Iterator iterf;
private final Predicate pred;
public FilteringIterator(ArrayIterator i, Predicate predykat)
{
iterf=i;
pred=predykat;
iterf.first();
}
メソッドは次のようになります。
public void printlist()
{
ArrayIterator itab =new ArrayIterator(lista);
for(itab.first();!itab.isDone(); itab.next())
{
Student stud=(Student)itab.current();
stud.show();
}
}
私も述語intefaceをを実装するクラスを持っている:
public interface Predicate
{
public boolean accept(Object ob);
}
FilteringIteratorを使用するにはどうすればよいですか?Predicateが必要な場合、そのようなオブジェクトを作成できません。
'Predicate'を実装するクラスを作成し、クラスのインスタンスを作成します。 –
[Javaでインタフェースを実装する方法](https://docs.oracle.com/javase/tutorial/java/IandI/usinginterface.html)を求めていますか? – shmosel
[このFilteringIteratorを実装するには?](http://stackoverflow.com/q/5474893/5221149) – Andreas