繁体   English   中英

重载 Java class 构造函数

[英]Overloading Java class constructors

我需要重载 BigInteger class 的构造函数,以从intlong创建一个 VeryLong 的实例。 这是我的代码:

    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 定义为LongArrayList ,则第一个构造函数中出现错误。 同样,如果我将A定义为Vector<Integer> A = new Vector<Integer>();在第二个add()方法中是错误的 . 我该如何解决?

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

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM