java怎么取树形数据的最后一层

问题遇到的现象和发生背景

有没有人知道如何获取一个递归出来的属性结构的某一个属性的集合啊(因为是递归出来的,所以这个树形结构层级不明)

问题相关代码,请勿粘贴截图
运行结果及报错内容
我的解答思路和尝试过的方法
我想要达到的结果

获取树的最后一层,可以使用广度优先算法,遍历到完最后一层也就得到了最后结果


public static List<TreeNode> findBottom(TreeNode root) {
        Queue<TreeNode> currentQueue = new LinkedList<>();
        Queue<TreeNode> nextQueue = new LinkedList<>();
        currentQueue.offer(root);
        List<TreeNode> result = new ArrayList<>(currentQueue);
        while (!currentQueue.isEmpty()) {
            TreeNode treeNode = currentQueue.poll();
            if (treeNode.left != null) {
                nextQueue.add(treeNode.left);
            }
            if (treeNode.right != null) {
                nextQueue.add(treeNode.right);
            }
            if (currentQueue.isEmpty() && !nextQueue.isEmpty()) {
                currentQueue = nextQueue;
                result = new ArrayList<>(currentQueue);
                nextQueue = new LinkedList<>();
            }
        }
        return result;
    }

public class TreeNode {
    public int val;
    public TreeNode left;
    public TreeNode right;

    public TreeNode(int value) {
        this.val = value;
    }

    public int getVal() {
        return val;
    }

    public void setVal(int val) {
        this.val = val;
    }

    public TreeNode getLeft() {
        return left;
    }

    public void setLeft(TreeNode left) {
        this.left = left;
    }

    public TreeNode getRight() {
        return right;
    }

    public void setRight(TreeNode right) {
        this.right = right;
    }
}

层序遍历