各ノードがクラス A またはクラス A のコレクションであるコレクションがあります。
これは、クラス A のコレクション内の各ノードがクラス A またはクラス A のコレクションである可能性があるという点でも再帰的です。
私は現在、リストを使用してから、オブジェクトをチェックして、それがクラス A であるかクラス A のリストであるかを確認していますが、ジェネリックを使用する目的を無効にしているようです。もっと木のような構造が必要だと思います。考え?
各ノードがクラス A またはクラス A のコレクションであるコレクションがあります。
これは、クラス A のコレクション内の各ノードがクラス A またはクラス A のコレクションである可能性があるという点でも再帰的です。
私は現在、リストを使用してから、オブジェクトをチェックして、それがクラス A であるかクラス A のリストであるかを確認していますが、ジェネリックを使用する目的を無効にしているようです。もっと木のような構造が必要だと思います。考え?
コンポジットデザインパターンを見てください。
ジェネリック型をインスタンス化すると、同種の型がコレクションに格納されます。現実の世界でこれを行う方法は、クラス A と B を結合する共通の媒体、コンテナー、またはインターフェイスを確立することです。インターフェイスを使用して、これらのオブジェクトを操作します。
あるいは、オブジェクトをデフォルトでリストとして扱うこともできます。私が何を意味するか分かりますか?
またはWrapper<ClassA>
のインスタンスを保持できるクラス ( ) を作成することを検討してください。次に、あなたの内側を作りますClassA
List
Lists
Lists
List<Wrapper<ClassA>>
以下のようにクラスノードを定義する必要があります
public class Node {
List<Node> children = new ArrayList<Node>();
}