名前が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());
これは私のスタッククラスです:
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;
}
私はそのトップを変更することなく、第2のスタックにArrayList
を初期化しようとしたが、とき私はこれを試しましたArrayList
私のstack2内でstack1.getTop()
で初期化されません。私はコンストラクタ内の可変サイズをチェックしており、値を持っています。なぜそれは間違っているのですか?
私はあなたの質問を理解していません。何が問題ですか? –
'arrBook = new arrBook(size);'新しいArrayList (サイズ) 'を意味しますか? –
Compass
あなたはどこかのトップの価値を変えていると確信していますか? – attaboy182