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