java - 重载 Java 类构造函数

标签 java class overloading

我需要重载 BigInteger 类的构造函数,以从 int 创建 VeryLong 的实例。和long 。这是我的代码:

    private ArrayList<Long> A = new ArrayList<>();

    private VeryLong(int n) {
        while (n > 0) {
            A.add(long()(n % 10));
            n /= 10;
        }

        while (!A.isEmpty()) {
            System.out.println(A.get(0));
            A.remove(0);
        }
    }

    private VeryLong(long n) {
        while (n > 0) {
            A.add(n % 10);
            n /= 10;
        }

        while (!A.isEmpty()) {
            System.out.println(A.get(0));
            A.remove(0);
        }
    }

如果我将 A 定义为 ArrayListLong第一个构造函数出现错误。同样,add()中的错误第二个方法,如果我定义 AVector<Integer> A = new Vector<Integer>(); 。我该如何修复它?

最佳答案

构造函数中的错误是由于错误的转换语法造成的:

应该是A.add((long)(n % 10));,而不是A.add(long()(n % 10));

关于java - 重载 Java 类构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58403667/

相关文章:

java - 在第一个字符上拆分字符串会使第一个元素为空。如何解决这个问题?

java - 为什么在没有同步块(synchronized block)的情况下调用 wait()、notify() 或 notifyAll() 不是编译器错误?

java - 使用 TREAT( ... as ... ) 将查询向下转换为子类时出现异常

java - Java 中的 ".class"关键字

java - Lambda表达式和方法重载的疑惑

java - 选择哪种数据结构?

c++ - 指针、类项和范围

ruby - ruby 是纯面向对象的编程语言吗,即使它不支持多重继承?请解释

c++ - C++ 和重载运算符的新手,不确定如何使用该函数

c++ - 如何在 C++ 中将私有(private)整数从 A 类传递到 B 类中的另一个 Int 变量