首頁 > Java > java教程 > 為什麼不能在宣告之外直接初始化 Java 陣列?

為什麼不能在宣告之外直接初始化 Java 陣列?

Linda Hamilton
發布: 2024-12-12 19:56:11
原創
244 人瀏覽過

Why Can't I Directly Initialize Java Arrays Outside of Declarations?

理解宣告以外的陣列初始化語法

在 Java 中,陣列初始化可以非常簡單,尤其是在宣告內使用時。但是,當嘗試在宣告之外初始化陣列時,會出現特定的語法限制,如以下場景所示:

AClass[] array = {object1, object2}; // Valid
登入後複製
AClass[] array = new AClass[2];
...
array[0] = object1;
array[1] = object2; // Also valid
登入後複製

但是,在聲明之外使用以下語法:

AClass[] array;
...
array = {object1, object2};
登入後複製

將會出現錯誤訊息,指示不允許進行此初始化。為什麼 Java 對此如此嚴格?

原因有些隨意,因為 Java 設計者可能對此限制有特定的語法或歷史理由。雖然並不總是清楚為什麼存在特定的語法規則,但必須遵守它們才能成功執行程式碼。

雖然有時會很不方便,但有一些解決方法可以在宣告之外初始化陣列。例如,以下語法將起作用:

AClass[] array;
...
array = new AClass[]{object1, object2};
登入後複製

因此,雖然 Java 可能會對聲明之外的陣列初始化施加一些限制,但它提供了替代方法來實現所需的結果。

以上是為什麼不能在宣告之外直接初始化 Java 陣列?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板