gpt4 book ai didi

java - 当私有(private)函数需要调用公共(public)函数时如何改进?

转载 作者:行者123 更新时间:2023-12-02 12:25:47 25 4
gpt4 key购买 nike

这是一个代码示例,有 2 个构造函数,一个为空,另一个采用矩阵。客户端可以调用空构造函数,然后单独传入数组以调用 add 函数,或者调用第二个构造函数,该构造函数采用矩阵。

我唯一失望的是私有(private)函数“addAll”调用公共(public)函数“add”。

是否有任何方法可以改进这一点(即私有(private)函数调用公共(public)方法)而不在构造函数内使用 for 循环?

public class MergeNSortedArray {

private PriorityQueue<ArrayContainer> heap;
int totalLength;

public MergeNSortedArray() {
heap = new PriorityQueue<MergeNSortedArray.ArrayContainer>();
}

public MergeNSortedArray(int[][] matrix) {
addAll(matrix);
}


private void addAll(int[][] matrix) {
for (int[] a : matrix) {
add(a);
}
}

public void add(int a[]) {
totalLength += a.length;
heap.add(new ArrayContainer(a));
}

最佳答案

为什么不将这个类设为final?它似乎只是一个实用程序类,因此任何人都没有理由对其进行子类化。

关于java - 当私有(private)函数需要调用公共(public)函数时如何改进?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17139048/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com