一区二区三区在线-一区二区三区亚洲视频-一区二区三区亚洲-一区二区三区午夜-一区二区三区四区在线视频-一区二区三区四区在线免费观看

服務器之家:專注于服務器技術及軟件下載分享
分類導航

PHP教程|ASP.NET教程|Java教程|ASP教程|編程技術|正則表達式|C/C++|IOS|C#|Swift|Android|VB|R語言|JavaScript|易語言|vb.net|

服務器之家 - 編程語言 - Java教程 - 聊聊java中引用數據類型有哪些

聊聊java中引用數據類型有哪些

2022-03-02 00:53xiaoming3526 Java教程

這篇文章主要介紹了java中引用數據類型有哪些,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教

java中引用數據類型有哪些

Java中有倆種數據類型,其中主要有8中基本數據類型和引用數據類型,除了8中基本數據類型以外都是引用數據類型,8中基本數據類型分別是byte,short,int,long,char,boolean,float,double,具體如下:

1、boolean:數據值只有true或false,適用于邏輯計算。

2、char:char型(字符型)數據在內存中占用2個字節。char型數據用來表示通常意義上的字符,每個字符占2個字節,Java字符采用Unicode編碼,它的前128字節編碼與ASCII兼容字符的存儲范圍在\u0000~\uFFFF,在定義字符型的數據時候要注意加' ',比如 '1'表示字符'1'而不是數值1,

3、byte:byte型(字節型)數據在內存中占用1個字節,表示的存儲數據范圍為:-128~127。

4、short:short型(短整型)數據在內存中占用2個字節。

5、int:int型(整型)數據在內存中占用4個字節。

6、long:long型(長整型)數據在內存中占用8個字節。

7、float:float型(單精度浮點型)數據在內存中占用4個字節。(float精度為7-8位)

8、double:double型(雙精度浮點型)數據在內存中占用8個字節。

下面說說java中引用數據類型:

引用數據類型分3種:類,接口,數組;

一、類Class引用

可以是我們創建的,這里我不多講,主要是講解幾個java庫中的類

  • Object:Object是一個很重要的類,Object是類層次結構的根類,每個類都使用Object作為超類,所有對象(包括數組)都實現這個類的方法。用Object可以定義所有的類

如:

?
1
2
Object object= new Integer(1); 來定義一個Interger類
Integer i=(Integer) object;     在來把這個Object強制轉換成Interger類
  • String:String類代表字符串,Java 程序中的所有字符串字面值(如"abc")都作為此類的實例來實現。檢查序列的單個字符、比較字符串、搜索字符串、提取子字符串、創建字符串副本、在該副本中、所有的字符都被轉換為大寫或小寫形式。
  • Date:Date表示特定的瞬間,精確到毫秒。Date的類一般現在都被Calendar 和GregorianCalendar所有代替
  • Void:Void 類是一個不可實例化的占位符類,它保持一個對代表 Java 關鍵字 void 的 Class 對象的引用。

同時也有對應的Class如:Integer Long Boolean Byte Character Double Float Short

二、接口interface引用

可以是我們創建的,這里我不多講,主要是講解幾個java庫中的接口interface

  • List<E>:列表 ,此接口的用戶可以對列表中每個元素的插入位置進行精確地控制。用戶可以根據元素的整數索引 (在列表中的位置)訪問元素,并搜索列表中的元素。List 接口提供了兩種搜索指定對象的方法。從性能的觀點來看,應該小心使用這些方法。在很多實現中,它們將執行高開銷的線性搜索。 List 接口提供了兩 種在列表的任意位置高效插入和移除多個元素的方法。
  • add():在列表的插入指定元素。
  • remove():移除列表中指定位置的元素。
  • get(int index):返回列表中指定位置的元素。
  • Map<K,V>

K - 此映射所維護的鍵的類型

V - 映射值的類型 將鍵映射到值的對象。一個映射不能包含重復的鍵;每個鍵最多只能映射到一個值。

  • put(K key,V value):將指定的值與此映射中的指定鍵關聯(可選操作)。如果此映射以前包含一個該鍵的映射關系,則用指定值替換舊值(當且僅當,返回 true 時,才能說映射 m 包含鍵 k 的映射關系)。 remove(Object key)如果存在一個鍵的映射關系,則將其從此映射中移除(可選操作)。更確切地講,如果此 映射包含從滿足(key==null ? k==null :key.equals(k))的鍵 k 到值 v 的映射關系,則移除該映射關系。(該映射最多只能包含一個這樣的映射關系.) get(Object key):返回指定鍵所映射的值;如果此映射不包含該鍵的映射關系,則返回 null。

這里我們主要是用String List Map Object 是最常用Number ArrayList<E> Arrays等

三、數組引用

數組:存儲在一個連續的內存塊中的相同數據類型(引用數據類型)的元素集合。

數組中的每一個數據稱之為數組元素,數組中的元素以索引來表示其存放的位置,索引(下標)從0開始。

數組的定義

  • 第一種方式:類型[] 數組名; 如 int[] nums;
  • 第二種方式:類型數組名[]; 如 int nums[];

大多數Java程序員喜歡使用第一種風格,因為它把數據類型int[],和變量名num分開了.

數組的初始化

Java中數組必先初始化后才能使用.

初始化就是給數組元素分配內存,并為每個元素賦初始值。

初始化數組的兩種方式:

- 靜態初始化:

語法格式:類型[] 數組名 = new 數組類型[]{元素1,元素2,元素3,...元素n};

簡化語法:類型[] 數組名 = {元素1,元素2,元素3...元素n};

- 動態初始化:

如果我們事先不知道數組里存儲哪些數據,只知道需要存儲數據的個數,此時可以使用動態初始化方式。

動態初始化:初始化時由我們指定數組的長度,系統自動為數組元素分配初始值。

格式:類型[] 數組名 = new 數組類型[數組長度];

注意:無論,以哪種方式初始化數組,一旦初始化完成,數組的長度就固定了,不能改變,除非重新初始化。也就是說數組是定長的。

為什么Java里有基本數據類型和引用數據類型?

引用類型在堆里,基本類型在棧里。

棧空間小且連續,往往會被放在緩存。引用類型cache miss率高且要多一次解引用。

對象還要再多儲存一個對象頭,對基本數據類型來說空間浪費率太高

以上為個人經驗,希望能給大家一個參考,也希望大家多多支持服務器之家。

原文鏈接:https://blog.csdn.net/baidu_31657889/article/details/51939332

延伸 · 閱讀

精彩推薦
主站蜘蛛池模板: 国产99在线观看 | 亚洲精品九色在线网站 | 国产一区二区免费视频 | tube69xxxxhd日本 | 国产一区二区三区四区波多野结衣 | 91久久综合九色综合欧美98 | 黑人艹逼 | 免费国产成人 | 视频一区二区三区欧美日韩 | 国产精品拍拍拍福利在线观看 | 白发在线视频播放观看免费 | 欧美在线成人免费国产 | 羞羞一区二区三区四区片 | 久久综合香蕉久久久久久久 | 欧美男男xxx激情做受 | 国产精品一二三 | 国产极品美女在线 | 国产免费色视频 | 国内精品视频九九九九 | 搞逼综合网 | 成年人网站免费在线观看 | 美国videos| 四虎海外影院 | 太大了轻点阿受不了小说h 四色6677最新永久网站 | 九九精品影院 | a级免费在线观看 | 视频国产精品 | 国产免费一区二区三区 | 欧美日韩亚洲国内综合网香蕉 | 亚洲sss综合天堂久久久 | 91麻豆国产 | 1314酒色 | 小小水蜜桃视频高清在线观看免费 | 欧美日韩中文字幕久久伊人 | 久久视频在线视频观看精品15 | 好深快点再快点好爽视频 | 亚洲精品国产成人7777 | 糖心在线观看网 | 韩国美女豪爽一级毛片 | 99自拍网| 四神集团1涨奶是第几章 |