麻豆黑色丝袜jk制服福利网站-麻豆精品传媒视频观看-麻豆精品传媒一二三区在线视频-麻豆精选传媒4区2021-在线视频99-在线视频a

千鋒教育-做有情懷、有良心、有品質的職業教育機構

手機站
千鋒教育

千鋒學習站 | 隨時隨地免費學

千鋒教育

掃一掃進入千鋒手機站

領取全套視頻
千鋒教育

關注千鋒學習站小程序
隨時隨地免費學習課程

當前位置:首頁  >  技術干貨  > java數據類型有哪些?

java數據類型有哪些?

來源:千鋒教育
發布人:wjy
時間: 2023-03-21 14:28:00 1679380080

  1. 簡介

  所謂的基本數據類型,是指CPU可以直接進行運算的類型,包括以下幾種:

  ● 整數型:byte、short、int、long;

  ● 浮點型:float、double;

  ● 字符型:char;

  ● 布爾型:boolean

  2. 整數型

  2.1 byte

  byte是字節類型,1個byte占8位,代表有符號的、以二進制補碼表示的整數,具有如下特點:

  ● 最小值是 -128(-2^7);

  ● 最大值是 127(2^7-1);

  ● 默認值是 0;

  ● byte 類型比較節約空間,因為 byte 變量占用的空間只有 int 類型的四分之一。

  public class TypeDemo01 { public static void main(String[] args) { // 定義byte類型的變量 // byte b = 10; // byte b = 127; byte b = -128; System.out.println(b); //注意:如下定義,在編譯階段就會出錯 //byte b = 128; //System.out.println(b); }}

  注意:

  因為byte的取值范圍在-128~127之間,如果我們定義byte變量的值=128,就超過了byte的范圍,所以在編譯階段就會出錯,“Type mismatch: cannot convert from int to byte”,意思是“類型不匹配:無法從byte轉為int”,如下圖所示:

java數據類型有哪些1

  2.2 short

  short 是短整型,占16 位,代表有符號的、以二進制補碼表示的整數,具有如下特點:

  ● 最小值是 -32768(-2^15);

  ● 最大值是 32767(2^15 - 1);

  ● 默認值是 0;

  ● short 數據類型也可以像 byte 那樣節省空間,一個short變量是int型變量所占空間的二分之一。

  public class TypeDemo01 { public static void main(String[] args) { //定義short類型的變量 //short s = 128; short s = 12800; System.out.println(s); }}

  2.3 int

  int 是整型,占32位,代表有符號的、以二進制補碼表示的整數,如有如下特點:

  ● 最小值是 -2,147,483,648(-2^31);

  ● 最大值是 2,147,483,647(2^31 - 1);

  ● 默認值是 0 ;

  ● 我們在開發時,一般都是用int表示整型變量。

  public class TypeDemo01 { public static void main(String[] args) { //定義int類型的變量 int i = 100000; System.out.println(i); }}

  2.4 long

  long 是長整型,占64 位,代表有符號的、以二進制補碼表示的整數,如有如下特點:

  ● 最小值是 -9,223,372,036,854,775,808(-2^63);

  ● 最大值是 9,223,372,036,854,775,807(2^63 -1);

  ● 默認值是 0L,"L"理論上不區分大小寫,但若寫成小寫的"l",容易與數字"1"混淆,不容易分辯,所以最好寫成大寫的“L”;

  ● 該類型主要用在需要較大數值的場景中。

  public class TypeDemo01 { public static void main(String[] args) { //定義long類型的變量,后面要帶L或l(不是1,也不是i) long l = 364748123123L; System.out.println(l); }}

  2.5 補充說明

  Java中只定義了帶符號的整型,因此最高位的bit表示正負符號,0表示正數,1表示負數,如:

  ● 1(十進制) = 0000 0001(二進制);

  ● 127(十進制) = 0111 1111(二進制);

  ● -128(十進制) = 1000 0000(二進制)

  關于二進制及進制間的轉換、原碼、反碼、補碼等內容,壹哥會在后面再單獨講解!

  3. 浮點型

  浮點數可表示的范圍非常大,float類型可最大表示3.4x1038,而double類型可最大表示1.79x10308。

  3.1 float

  float 是單精度的浮點類型,占32位,是符合IEEE 754標準的浮點數,具有如下特點:

  ● float 在儲存大型浮點數組時,可以節省內存空間;

  ● 默認值是 0.0f,"f"理論上不區分大小寫;

  ● float浮點數不能用來表示精確的值,如不能用float來表示貨幣等。

  public class TypeDemo01 { public static void main(String[] args) { //定義float類型的變量,后面帶F或f float f = 10.2F; //float f = 3.14e38f; // 科學計數法表示的3.14x10^38 System.out.println(f); float f1 = 9999.9994f; System.out.println(f1); } }

  3.2 double

  double 是雙精度的浮點類型,占64 位,是符合 IEEE 754 標準的浮點數,具有如下特點:

  ● 浮點數的默認類型為 double 類型;

  ● 默認值是 0.0d,"d"理論上不區分大小寫;

  ● double類型同樣不能表示精確的值,如貨幣。

  public class TypeDemo01 { public static void main(String[] args) { //定義double類型的變量,后面可以帶D或d,也可以不帶 double d = 10d; //double d = 4.9e-324; // 科學計數法表示的4.9x10^-324 System.out.println(d); double d1 = 12345678910111213.0; System.out.println(d1); } }

  3.3 補充說明

  float和double的最小值和最大值都是以科學記數法的形式輸出的。結尾的"E+數字"表示E之前的數字要乘以10的多少次方。比如3.14E3就是3.14 × 103=3140,3.14E-3 就是 3.14 x 10-3 =0.00314。

  4. 字符型

  4.1 字符的特點

  char是一種表示字符的類型。Java的char類型除了可以表示標準的ASCII,還可以表示一個Unicode字符,代表一個單一的16位 Unicode 字符,具有如下特點:

  ● 最小值是 \u0000(十進制等效值為 0);

  ● 最大值是 \uffff(即為 65535);

  ● char 數據類型可以儲存任何字符。

  4.2 字符的三種表現形式

  在java中,字符和字符串是兩種不同的數據類型。char類型使用單引號''表示,單引號里面只能有一個字符。字符串用雙引號""表示,雙引號中可以有很多字符。字符有三種表現形式:

  1. 字符 'a' 、'中';

  2. 數字 97、20;

  3. 十六進制 '\u0041'。

  4.3 代碼案例

  public class TypeDemo01 { public static void main(String[] args) { //定義字符型,字符帶有英文的'' char c1 = '中'; char c2 = 20013; char c3 = '\u0041'; //單引號中只能有一個字符! //char c4 = '中國'; System.out.println(c1);//中 System.out.println(c2);//中 System.out.println(c3);//A }}

  大家要注意,單引號''中只能有一個字符,否則會出現如下錯誤:”Invalid character constant“,無效的字符常量!

java數據類型有哪些2

  4.4 轉義字符

  在上面的代碼案例中,我們可以看到有些字符的前面帶有反斜杠(\),這個反斜杠其實也是一個字符,它是一種轉義字符,對編譯器來說有著特殊的含義。下表展示了Java中常用的幾個轉義字符含義:

java數據類型有哪些3

  5. 布爾型

  boolean是布爾類型,該類型只表示一位信息,布爾類型是關系運算的計算結果,具有如下特點:

  ● 布爾類型只有兩個值:true 和 false;

  ● 默認值是 false;

  ● 該類型一般是作為一種標志,來記錄 true/false 的情況。

  public class TypeDemo01 { public static void main(String[] args) { //boolean類型,真假(一般用條件判斷),true false //boolean flag = true; boolean flag = false; System.out.println(flag); int age = 12; boolean isAdult = age >= 18; // 計算結果為false System.out.println(isAdult); }}

  6. 取值范圍

  6.1 范圍對比

  我們在講解8種基本類型時,大家會發現,不同的類型大小不同,也就是它們有不同的取值范圍。接下來壹哥給大家總結一下這幾種不同類型的取值范圍。

java數據類型有哪些4

  6.2 原理剖析

  有的初學者可能不理解,為什么不同數據類型的取值范圍大小不一樣?比如同樣都是整數,為什么有的范圍大有的范圍小?壹哥簡單給大家舉個例子。計算機的每個內存單元,都有自己的內存地址,一般都是從0開始編號。而每個內存單元都可以看作是一個房間,房間有大有小,并且房間的類型不同,有的是大床房,有的是標間,有的是總統套房。另外內存地址就是房間的門牌號,方便我們找到對應的房間。

java數據類型有哪些5

  不同的數據類型之所以取值范圍不同,就好比每種類型都是不同的房型,有大有小,如下圖所示:

java數據類型有哪些6

  這些不同的類型,占用的字節大小不同,所以取值范圍自然也不一樣。

  6.3 boolean類型補充說明

  在上面6.1小節中,關于boolean類型所占的字節大小,壹哥在表格中并沒有說明。這是因為根據官方文檔描述,boolean類型經過編譯之后采用int來定義(所以此時boolean占4字節,32bits),但如果是boolean數組則占1字節(8 bits)。詳見下圖紅色標注:

java數據類型有哪些7

  7. 關于void

  實際上,java中還有另外一種基本類型 void,它也有對應的包裝類 java.lang.Void。但我們無法對它們直接進行操作,所以一般不把它們當做基本類型對待。

  8. 包裝類型

  雖然Java是面向對象的語言,但為了方便我們開發,在Java中繼續沿用了C語言的基本數據類型。我們在進行常規的數據計算時,可以直接使用基本類型。但因為基本數據類型不具備面向對象的行為特征,不能通過方法的形式進行調用,且基本類型也不能存入到Java的集合中。所以后來Java提供了與基本類型對應的8個包裝類,使其具有了對象的屬性和方法。基本類型與其對應的包裝類如下表所示:

java數據類型有哪些8

  9.1 概念

  所有的ASCII碼都可以用"\"加數字(一般是8進制數字)來表示。Java中定義了一些字母前加"\"來表示特殊含義的字符,如\0、\t、\n等,這些都被稱為轉義字符(Escape Character),它們可以用來轉變某個字符原有的含義。

  9.2 案例

  大家要注意,我們在開發時會用到兩種斜線,包括“/”和“\”。其中 “/” 斜線(slash)又稱為forward slash (前斜線),原本是一種標點符號。“\”則是后斜線,在Java中作為轉義字符,常見的組合如下:

  ● \n:表示換行;

  ● \b:表示退格;

  ● \r:表示回車;

  ● \":表示雙引號;

  ● \':表示單引號;

  ● \\:表示反斜線;

  ● \':表示單引號;

  ● \t:表示tab制表;

  ● \f:表示走紙換頁;

  public class TypeDemo01 { public static void main(String[] args) { //常見轉義字符:\n 表示換行;\t表示制表位 //轉義字符:\t,可以空4格;\n,可以換下一行; System.out.println("hello\tworld"); System.out.println("hello\nworld"); //轉義字符,\"",輸出中文的“” System.out.println("你\"真棒\""); //轉義字符:默認情況下,斜杠是不能單獨輸出使用的,需要加一個轉義字符才能輸出。 System.out.println("D:\\a\\b"); }}

  效果如下圖所示:

java數據類型有哪些9

  9.3 常用轉義字符

  以下是一些常用的轉義字符供大家參考使用。

java數據類型有哪些10

  以上就是關于java數據類型的介紹,剛入門的朋友一定要認真學習哦!!!

tags:
聲明:本站稿件版權均屬千鋒教育所有,未經許可不得擅自轉載。
10年以上業內強師集結,手把手帶你蛻變精英
請您保持通訊暢通,專屬學習老師24小時內將與您1V1溝通
免費領取
今日已有369人領取成功
劉同學 138****2860 剛剛成功領取
王同學 131****2015 剛剛成功領取
張同學 133****4652 剛剛成功領取
李同學 135****8607 剛剛成功領取
楊同學 132****5667 剛剛成功領取
岳同學 134****6652 剛剛成功領取
梁同學 157****2950 剛剛成功領取
劉同學 189****1015 剛剛成功領取
張同學 155****4678 剛剛成功領取
鄒同學 139****2907 剛剛成功領取
董同學 138****2867 剛剛成功領取
周同學 136****3602 剛剛成功領取
相關推薦HOT
主站蜘蛛池模板: 最近中文字幕免费4| 正在播放黑人巨大视频| 精品无人区一区二区三区| 在厨房里挺进美妇雪臀| 日韩欧美高清视频| 欧美亚洲一二三区| 欧美日韩视频| 四虎影视在线影院在线观看| 你懂的免费在线观看| 免费污视频在线| 久久99国产一区二区三区| 俺也去网站| 国产精品日韩欧美一区二区三区| 91久久香蕉国产线看| 哈昂~哈昂够了太多太深小说| 欧美成人看片黄a免费看| 天天躁日日躁狠狠躁中文字幕| 娃娃脸中文字幕1080p| 国产三级精品三级在线专区1| 台湾swag在线观看| 香港三级理论在线影院| 一区二区三区午夜| 乱人伦中文字幕电影| 日本的一级片| 琪琪色在线观看| 日本三人交xxx69| 午夜爽视频| 亚洲日本乱码在线观看| 99精品视频在线观看免费| 免费做暖1000视频日本| 成年男女免费视频网站| 国产一区二区三区小向美奈子| 最近免费观看高清韩国日本大全| 一级国产电影| 日韩精品在线电影| 国产性片在线观看| 成年女人黄小视频| **实干一级毛片aa免费| 日本乱子伦xxxx| 天堂а√8在线最新版在线| 草b视频|