1. 程式人生 > >java中的基本資料型別與封裝類

java中的基本資料型別與封裝類

java提供了一組基本資料型別,包括boolean, byte, char, short,  int, long, float, double, void. 同時,java也提供了這些型別的封裝類,分別為Boolean, Byte, Character, Short, Integer, Long, Float, Double, Void。

既然提供了基本型別,為什麼還要使用封裝類呢?

  • 某些情況下,資料必須作為物件出現,此時必須使用封裝類來將簡單型別封裝成物件。
  1. 比如,如果想使用List來儲存數值,由於List中只能新增物件,因此我們需要將資料封裝到封裝類中再加入List。在JDK5.0以後可以自動封包,可以簡寫成list.add(1)的形式,但新增的資料依然是封裝後的物件。 
  2. 另外,有些情況下,我們也會編寫諸如func(Object o)的這種方法,它可以接受所有型別的物件資料,但對於簡單資料型別,我們則必須使用封裝類的物件。
  • 某些情況下,使用封裝類使我們可以更加方便的操作資料。比如封裝類具有一些基本型別不具備的方法,比如valueOf(), toString(), 以及方便的返回各種型別資料的方法,如Integer的shortValue(), longValue(), intValue()等。

基本資料型別與其對應的封裝類由於本質的不同,具有一些區別:

  • 基本資料型別只能按值傳遞,而封裝類按引用傳遞。
  • 基本型別在堆疊中建立;而對於物件型別,物件在堆中建立,物件的引用在堆疊中建立。基本型別由於在堆疊中,效率會比較高,但是可能會存在記憶體洩漏的問題。

相關推薦

java基本資料型別封裝

部落格轉自https://blog.csdn.net/maggiedorami/article/details/7944459     Integer是一個類,是int的封裝類。 int是基本資料型別。 Integer就是把一個int型別的封裝成一個類。

Java基本資料型別包裝,字串轉換

儲存範圍大小: byte-short-char-int-long-float-double 低階到高階自動型別轉換: int i = 5; float f = i; double d = i; 高階到低階強制型別轉換: int a = 20; byte b = (byte) a;

Java基本資料型別封裝

在java中,存在一些基本資料型別,而這些資料型別則都有著對應的封裝類。 public class testBasic { public static void main(String[] arg

Java基本資料型別封裝、字串的相互轉換

一、基本資料型別與其對應的封裝類之間的相互轉換 基本資料型別轉換為封裝類 1·直接賦值  (自動打包) Integer i=3;   2·使用封裝類的含參建構函式(例項化) Integer i=new Integer(3);   3·使用封裝類提供的valueOf

java基本資料型別封裝

java提供了一組基本資料型別,包括boolean, byte, char, short,  int, long, float, double, void. 同時,java也提供了這些型別的封裝類,分別為Boolean, Byte, Character, Short, In

Java基本資料型別對應的包裝和引用資料型別

基本資料型別變數儲存的是值,引用型別儲存的是物件的引用(物件的地址)。 基本資料型別不具有物件的特性,當有些地方必須要使用物件的時候,例如集合類(List,Set等),基本資料型別就不能使用了,所以Java提供了包裝類。基本資料型別可以進行加減乘除等運算,而包裝類提供了很多

Java基本資料型別流的操作方法

package com.j2medev.mingjava;import java.io.*;public class TestDataIO{ public static void main(String[] args) throws IOException {  Account account = new A

Java基本資料型別及其封裝

  Java中的資料型別有兩種,基本資料型別和引用資料型別,引用資料型別的建立是   需要去new一個物件,該物件的記憶體分配在堆區,同時棧區會儲存一個指向該物件的引用,   但是對於一些簡單資料的建立,用new的方式就不是很有效了,因此JVM中定義了一套對於基本   資料型別的描述,它

Java基本資料型別及其封裝

子曰:學而時習之,不亦樂乎。 java中有八種基本資料型別,分別是: boolean(布林型)     byte(位元組型)     char(位元組型)     short(短整型)    int(整型)       long(長整型)    float(浮點型)  

java基本資料型別封裝型別詳解(int和Integer區別)

int是java提供的8種原始資料型別之一。 Java為每個原始型別提供了封裝類,Integer是java為int提供的封裝類(即Integer是一個java物件,而int只是一個基本資料型別)。int的預設值為0,而Integer的預設值為null,即Integer可以區

基本資料型別包裝區別

java中八大基本資料型別: Byte,short,int,long,char,double,float,boolean 二者之間也存在一些區別: 宣告方式不同,基本型別不適合new關鍵字,而包裝型別需要使用new關鍵字來在堆中分配儲存空間; 儲存方式及位置不同,基本型別

Java之——基本資料型別byte陣列相互轉化

我們直接上程式碼 package cn.com.eteamsun.utils; import java.nio.charset.Charset; /** * Java基本資料型別和byte陣列相互轉化 * @author liuyazhuang * */ p

Java基本資料型別和引用資料型別的存放位置

基本資料型別是放在棧中還是放在堆中,這取決於基本型別宣告的位置。 一:在方法中宣告的變數,即使變數是區域性變數,每當程式呼叫方法時,系統都會為該方法建立一個方法棧,其所在方法中宣告的變數就放在方法棧中,當方法結束系統會釋放方法棧,其對應在該方法中宣告的變數隨著

JAVA基本資料型別和佔用記憶體空間大小

byte:1個位元組,8位,-128~127 最大儲存資料量 255short:2個位元組,16位,-32768~32767 最大儲存資料量 65535char:2個位元組,16位,儲存Unicode編碼,用‘’int:4個位元組,32位,負的2的31次方~2的31次方-1 

1.String物件和常量池 2.基本資料型別封裝(128以下等不做快取)

序言: 基礎知識: 1.java的基本型別:    字元型別char,布林型別boolean以及數值型別byte、short、int、long、float、double 2.引用型別    Java有 5種引用型別(物件型別):類 介面 陣列 列舉 標註    引用型

8種基本資料型別對應封裝

java為了使這些基本資料型別也能夠像物件一樣被操作,也為這些基本資料型別提供了響應的封裝類物件。 這就方便了對資料的操作。 例如:Java為每個原始型別提供了封裝類,Integer是java為

Java 八大基本資料型別以及包裝的詳解

一、java中八種基本資料型別對應的包裝型別:   原始型別 包裝類 原始型別所佔的位元組數    short    Short       2個位元組                        

深入解析js基本資料型別引用型別,函式引數傳遞的區別

ECMAScript的資料有兩種型別:基本型別值和引用型別值,基本型別指的是簡單的資料段,引用型別指的是可能由多個值構成的物件。 Undefined、Null、Boolean、Number和String是值型別,其他都是引用型別。其他語言String是

你真的搞明白Java基本資料型別的轉換了嗎?

寫這篇部落格源於在進行長連線通訊的時候我們需要將流資料和我們的String、基本型別的資料之間進行轉換,我們知道byte[]與String之間的轉換相當方便,那麼接下來我們就要弄懂byte[]與基本資料型別之間的轉換了。 計算機中的儲存 首先

javaNaN和Infinity基本資料型別和包裝(double,Double)

java浮點數運算中有兩個特殊的情況:NAN、INFINITY。 1、INFINITY: 在浮點數運算時,有時我們會遇到除數為0的情況,那java是如何解決的呢? 我們知道,在整型運算中,除數是不能為0的,否則直接執行異常。但是在浮點數運算中,引入了無