次のようなクラス名のリストがあります。
String s1 = "com.mycompany.project.dao.hibernate.BaseDAOHibernate";
String s2 = "com.mycompany.project.domain.Product";
String s3 = "com.mycompany.project.domain.ProductCategory";
String s4 = "com.mycompany.project.service.impl.ProductServiceImpl";
String s5 = "com.mycompany.project.domain.User";
String s6 = "com.mycompany.project.service.impl.ProductCategoryServiceImpl";
String s7 = "com.mycompany.project.dao.hibernate.ProductCategoryDAOHibernate";
String s8 = "com.mycompany.project.dao.hibernate.ProductDAOHibernate";
String[] strings = { s1, s2, s3, s4, s5, s6, s7, s8};
次のクラス定義を使用して、この配列をツリー構造に変換したいと思います。
public class Item {
private String itemName;
private List<Item> subItems;
}
メソッドは上記の配列を受け取り、次のオブジェクトを生成します。
item.ItemName = "com";
item.suItems = {"mycompany"};
item2.itemName = "mycompany";
item2.subItems = {"project");
item3.itemName = {"project"};
item3.subItems = {"dao", "domain", "service"}
... 等々。
入力として何百ものクラスのリストがあるかもしれないことを知って、この操作を実行する方法についてアドバイスしてください。
ありがとう