我创建一个名为StackOfBook
的堆栈类。我需要2个栈,所以我创建这个对我的主类:ArrayList初始大小不起作用
StackOfBook stack1 = new StackOfBook();
while (true) {
long number = sc.nextLong();
if (number == -1) {
break;
}
stack1.push(number);
}
StackOfBook stack2 = new StackOfBook(stack1.getTop());
这是我的Stack类:
private int top = 0;
private ArrayList<Long> arrBook;
public StackOfBook(){
arrBook = new ArrayList<Long>();
}
public StackOfBook(int size){
arrBook= new arrBook<Long>(size);
}
public int getTop() {
return this.top;
}
我试图初始化在第二堆栈的ArrayList
不改变它的顶部,但是当我试过这个ArrayList
在我的堆栈2不会初始化为stack1.getTop()
。我在构造函数中检查了变量大小,它有一个值。为什么它错了?
我不明白你的问题。问题是什么? –
'arrBook = new arrBook(size);'你的意思是'新的ArrayList (size)'? –
Compass
你确定你正在改变某处顶部的价值? – attaboy182