【发布时间】:2019-05-11 02:25:37
【问题描述】:
这个问题在get nested List of CustomObject from JTree, including leaf有逆过程
我想实现一个过程的方法优化,我把这个过程简单化了(乘法和除法),就像一个树所示。
底部和粗体矩形(在线工具不允许我更改颜色)表示每个列表的 N 分子和 D 分母之间的总乘积。
现在,我正在用 Java 创建列表列表,以计算每个列表(进程)的总成本。
我的第一步是创建一个类...
public class Pair {
private int num;
private int den;
public Pair(int num, int den) {
this.num = num;
this.den = den;
}
public int getNum() {
return num;
}
public void setNum(int num) {
this.num = num;
}
public int getDen() {
return den;
}
public void setDen(int den) {
this.den = den;
}
@Override
public String toString() {
return "Pair{" + "num=" + num + ", den=" + den + '}';
}
}
第二步是……
公共类TestPair {
public static void main(String... args) {
ArrayList<ArrayList<Pair>> listOfListPair = new ArrayList<>();
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(3, 1), new Pair(1, 2)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(3, 1), new Pair(3, 1)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(3, 1), new Pair(2, 1)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(11, 2), new Pair(1, 2)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(11, 2), new Pair(13, 3)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(1, 7), new Pair(1, 2)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(1, 7), new Pair(2, 1), new Pair(2, 1)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(1, 7), new Pair(2, 1), new Pair(3, 1)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(1, 7), new Pair(2, 1), new Pair(5, 1)}));
listOfListPair.add((ArrayList<Pair>) Arrays.asList(
new Pair[]{new Pair(1, 1), new Pair(1, 7), new Pair(2, 1), new Pair(2, 7)}));
javax.swing.JTree myTree = new javax.swing.JTree();
listOfListPair.stream().forEachOrdered(listPair -> {
//HOW POPULATE THE myTree?
});
}
}
对我来说很重要的问题:JTree, Optimization algorithm, Java
递归填充我的树的一些线索?,
【问题讨论】:
-
不清楚什么是对以及它们应该如何在树中表示
-
还是不明白建树的规则。为什么
N2/D1节点处于不同级别?您有 10 个列表/32 对和 25 个节点 - 这些对如何转换为这些节点?我建议你举一些例子来说明如何从给定的列表/对中构建 3-4 个节点的树。
标签: java list swing java-stream jtree