[英]Overloading Java class constructors
我需要重载 BigInteger class 的构造函数,以从int
和long
创建一个 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 定义为Long
的ArrayList
,则第一个构造函数中出现错误。 同样,如果我将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.