Java 中的自動裝箱是什麼? 有例子

已發表: 2023-01-28

在當今世界,Java 是編寫 Android 應用程序腳本的著名選擇。 它還在機器學習環境、雲應用程序和物聯網技術中發現了廣泛的需求。 開發人員需要對 Java 編程的最新趨勢有透徹的了解。 Java 開發人員的有利可圖的職業前景是有保障的,因為該語言在企業中佔有一席之地。 Java不僅是安卓移動應用市場領先的面向對象語言,在後端市場領域也是領先的。

目錄

Java 中自動裝箱的基礎知識:

在編寫程序腳本時,大多數編程語言都使用原始數據類型。 但是,在Java等面向對象的編程語言中,原始數據類型在某些場景下效果並不好,在這個領域上是達不到要求的。 為了克服原始數據類型的限制,使用了包裝器。 這種現象稱為自動裝箱。 讓我們在後續部分中更多地討論 Java 中的自動裝箱。

查看我們的免費技術課程,在競爭中脫穎而出。

探索我們的熱門軟件工程課程

LJMU & IIITB 計算機科學碩士 加州理工學院 CTME 網絡安全證書課程
全棧開發訓練營 區塊鏈PG項目
全棧開發中的執行 PG 計劃
在下面查看我們所有的課程
軟件工程課程

自動裝箱和自動拆箱:

自動裝箱是將原始值轉換為包裝類對象的過程。 例如,將 int 數據類型轉換為整數類。 如果原始值是: 自動裝箱功能由 Java 編譯器執行:

  • 分配給相應包裝類的變量。
  • 作為參數傳遞給使用相應包裝類的對象的方法。

自動裝箱與自動裝箱功能相反。 將包裝器類型對象轉換為其各自的原始值稱為拆箱。 讓我們考慮一個將 Integer 對象轉換為 int 數據類型的示例。 Java 編譯器在包裝類對象為以下情況時執行拆箱:

  • 分配了相應原始類型的變量。
  • 作為參數傳遞給需要相應原始類型值的方法。

從世界一流大學在線學習軟件開發課程。 獲得執行 PG 課程、高級證書課程或碩士課程,以快速推進您的職業生涯。

需求軟件開發技能

JavaScript 課程 核心 Java 課程 數據結構課程
Node.js 課程 課程 全棧開發課程
NFT課程 開發運營課程 大數據課程
React.js 課程 網絡安全課程 雲計算課程
數據庫設計課程 Python 課程 加密貨幣課程

詳細自動裝箱:

術語裝箱和自動裝箱在許多情況下交替使用來描述相同的概念。 但是,這兩個術語之間存在細微差別。 術語“裝箱”是指包裝原始數據類型以形成對象。 讓我們考慮一個例子來理解這個概念。 考慮下面編寫的 Java 代碼語句。

int FirstNumber = 1;

在此語句中,變量“FirstNumber”是原始的 int 數據類型。 可以使用下面的語句將其轉換為對象。

整數 SecondNumber = new Integer(2);

上述語句中的變量 SecondNumber 不是原始 int 數據類型。 相反,它是一個 Integer 對象。 這種將原始數據類型轉換為對象的過程稱為裝箱。 執行此任務的最簡單方法是開發一個包含單個 int 數據類型屬性的類。 一個 int 類型值的構造函數被分配給類屬性。 有幾種方法用於操作 int 值。 Java 中的包裝器類可用於將其他數據類型轉換為對象。

自動裝箱是編譯器自動執行的功能,無需明確提及。

MyList.add(Integer.valueOf(i));

這是編譯器添加到我們程序中的行。

在上面的代碼語句中,在提到方法 valueOf() 之前指定了類“Integer”的名稱,因為 valueOf() 是一個靜態方法。

閱讀我們與軟件開發相關的熱門文章

如何在 Java 中實現數據抽象? Java中的內部類是什麼? Java 標識符:定義、語法和示例
通過示例了解 OOPS 中的封裝 C 中的命令行參數解釋 2022 年雲計算的十大特點
Java 中的多態性:概念、類型、特徵和示例 Java 中的包以及如何使用它們? Git 初學者教程:從零開始學習 Git

什麼是 Java 中的拆箱?

現在我們已經了解了將原始數據類型轉換為對象的過程,讓我們看看執行裝箱的反向功能的過程。 拆箱,如前所述,是指將包裝類類型的對象轉換為其原始數據類型的過程。

當拆箱過程由編譯器自動執行而沒有在程序中明確提及時,稱為自動拆箱。 讓我們考慮下面顯示的示例以了解自動拆箱。

更多關於包裝類:

在自動裝箱的例子中,變量 I 是 int 數據類型,對象 Integer 是一個包裝類。 Java 中的包裝類可用於所有原始數據類型。 這些類使用戶能夠將變量從原始數據類型轉換為包裝類類型的相應對象。 包裝類方法用於值的操作。 下表總結了原始數據類型及其各自的包裝類。 請注意,包裝類的名稱以大寫字母開頭。

原始數據類型

對應的包裝類

字節字節
布爾值布爾值
字符特點
整數整數
漂浮漂浮
短的短的
雙倍的雙倍的

Java 中自動裝箱和自動拆箱的優點:

  • 自動裝箱和拆箱的過程使程序員能夠編寫結構良好且易於閱讀的代碼。
  • 該過程還使用戶能夠在原始數據類型和包裝類對象之間交替切換。 因此,不需要顯式類型轉換。

如果您有興趣了解有關 Java、全棧軟件開發的更多信息,請查看 upGrad 和 IIIT-B 的軟件開發執行 PG 課程——全棧開發專業化,該課程專為在職專業人士設計,並提供 500 多個小時的嚴格培訓、9 個以上的項目和任務、IIIT-B 校友身份、實用的實踐頂點項目和頂級公司的工作協助。

想要分享這篇文章?

為未來的職業做準備

立即申請軟件工程碩士