我正在處理一個處理Java數組操作的任務。現在我必須刪除數組中間的元素。現在我知道數組一旦創建就無法改變長度。所以我決定創建一個新對象,並將前一個參考點指向我的新數組。通過void方法引用新對象
public class A{
public static void main(String[] args){
B test = new B(val);
test.cut(2,4);
test.display();
}
class B{
private Obj[] array;
B(Obj val){
construct something
}
public void cut(int i, int j){
B newObject = new B(val);
...
newObject.array = this.array;
newObject = this;
}
}
問題是,當我顯示測試對象時,它只會顯示原始測試對象內容而不是newObject內容。由於這是一個無效的方法,我不能返回一個對象。那麼我如何引用新對象呢?我的剪切方法的最後兩行似乎完全沒有效果。我知道ArrayList對於這樣的事情會更可取,但這是一項家庭作業,我們不得不使用數組。
哇,這太聰明瞭。我不敢相信我沒有想到這一點。它的作品!我一直在創造整個對象,我一直認爲這是魯莽的。你會建議只更改字段引用而不是對象引用更好嗎? – Nopiforyou