ShapeスーパークラスとNestedShapeサブクラスがあります。NestedShapeサブクラスには、ネストされた ArrayList (' ' )ShapesListがあります。Shapesの「含む」メソッドを実装する必要がありますNestedShape。このメソッドは、Shapeオブジェクトが与えられたときに、その形状が の に存在するかどうかをチェックする必要がありNestedShapeますShapeList。現時点での私の実装は非常に単純です。 で ArrayList.contains()メソッドを呼び出すだけですShapesList。
ただし、実装する必要がある 'contains' メソッドでは、検索対象の形状が に含まれていないことも確認する必要がNestedShapeありますShapesList。ShapeListこれを行うための明白な方法は、 を使用して、 内のinstanceofそれぞれが であるかどうかを確認することです。次に、それが. ただし、これがこれを行う良い方法であるかどうかはわかりません-の使用は嫌われていると聞いています(また、再帰を使用するという私の考えが機能するかどうかもわかりません)。ShapeShapeListNestedShapeNestedShapeinstanceof
誰かがこの問題を解決するより良い方法を提案できますか?
ありがとう :)