Hallo,
ich habe folgende Methoden geschrieben:
Nun möchte ich, dass die Blätter der Knoten aufsteigend in numerischer Reihenfolge (1, 2, 3, 4...) nach ihrer facilityNumber im Baum sortiert werden. Wie mache ich das, habe noch nie mit Sortierungen gearbeitet.
Konkrete Hilfe anhand von Code wäre sehr hilfreich.
MfG Pago
ich habe folgende Methoden geschrieben:
Code:
private Map<String, List<WEAObject>> _parkMap;
public TreeWindow(List<WEAObject> weaObjects)
{
super();
_parkMap = createParkMap(weaObjects);
DefaultMutableTreeNode root = new DefaultMutableTreeNode("Wurzel");
Set<String> keys = _parkMap.keySet();
for (String key : keys)
{
List<WEAObject> weaObjectList = _parkMap.get(key);
DefaultMutableTreeNode child = new DefaultMutableTreeNode(key);
for (int j = 0; j < weaObjectList.size() ; j++)
{
WEAObject weaObject = weaObjectList.get(j);
String facilityType = weaObject.getFacilityType() + " " + weaObject.getFacilityNumber();
DefaultMutableTreeNode subChild = new DefaultMutableTreeNode(facilityType);
child.add(subChild);
}
root.add(child);
}
DefaultTreeModel treeModel = new DefaultTreeModel(root);
this.setModel(treeModel);
this.setRootVisible(false);
}
private Map<String, List<WEAObject>> createParkMap(List<WEAObject> weaObjects)
{
Map<String, List<WEAObject>> weaObjectMap = new TreeMap<String, List<WEAObject>>();
for (int i = 0; i < weaObjects.size(); i++)
{
WEAObject weaObject = weaObjects.get(i);
String parkName = weaObject.getParkName();
if (weaObjectMap.containsKey(parkName))
{
weaObjectMap.get(parkName).add(weaObject);
}
else
{
List<WEAObject> weaObjectList = new ArrayList<WEAObject>();
weaObjectList.add(weaObject);
weaObjectMap.put(parkName, weaObjectList);
}
}
return weaObjectMap;
}
Nun möchte ich, dass die Blätter der Knoten aufsteigend in numerischer Reihenfolge (1, 2, 3, 4...) nach ihrer facilityNumber im Baum sortiert werden. Wie mache ich das, habe noch nie mit Sortierungen gearbeitet.
Konkrete Hilfe anhand von Code wäre sehr hilfreich.
MfG Pago