您好,登錄后才能下訂單哦!
這篇“Java數(shù)據(jù)類型如何定義與使用”文章的知識(shí)點(diǎn)大部分人都不太理解,所以小編給大家總結(jié)了以下內(nèi)容,內(nèi)容詳細(xì),步驟清晰,具有一定的借鑒價(jià)值,希望大家閱讀完這篇文章能有所收獲,下面我們一起來(lái)看看這篇“Java數(shù)據(jù)類型如何定義與使用”文章吧。
讀音 biao zhi fu
包、類、變量、方法…等等,只要是起名的地方,那個(gè)名字就是標(biāo)識(shí)符
四個(gè)可以:可以是數(shù)字、字母、下劃線(_)、美元符號(hào)($),我們一般起名盡量使用英文字母。
兩個(gè)不可以:不可以以數(shù)字開(kāi)頭,不可以使用java中的關(guān)鍵字。
見(jiàn)名知意:使讀者能通過(guò)名字就能明白是干什么的,比如:冒泡排序(bubble_Sort
),我們就能清楚的知道這個(gè)方法是冒泡排序。
駝峰命名:
類名:首字母大寫,其余遵循駝峰命名
方法名/變量名:首字母小寫,其余遵守駝峰命名
包名:全部小寫
長(zhǎng)度限制:長(zhǎng)度沒(méi)有限制,但是不建議太長(zhǎng)
被Java語(yǔ)言賦予了特殊含義,用作專門用途的單詞
特點(diǎn):Java中所有的關(guān)鍵字都為小寫
官網(wǎng):https://docs.oracle.com/javase/tutorial/java/nutsandbolts/_keywords.html
常量分為兩種:
常量通常指的是一個(gè)固定的值,例如:1、2、3、’a’、’b’、true、false、”helloWorld”等。
在Java語(yǔ)言中,主要是利用關(guān)鍵字final來(lái)定義一個(gè)常量。 常量一旦被初始化后不能再更改其值。
為了更好的區(qū)分和表述,一般將1、2、3、’a’、’b’、true、false、”helloWorld”等稱為字面常量,而使用final修飾的PI等稱為符號(hào)常量(字符常量)。
字面常量的類型:
整型常量: 123 23
實(shí)型常量: 3.1415926
字符常量: ‘a’ ‘b’
邏輯常量: true false
字符串常量: “helloworld”
注意:邏輯常量就兩個(gè)值,一個(gè)是true,一個(gè)是false
變量本質(zhì)上就是代表一個(gè)可操作的存儲(chǔ)空間,空間位置是確定的,但是里面放置什么值不確定。我們可通過(guò)變量名來(lái)訪問(wèn)對(duì)應(yīng)的存儲(chǔ)空間”,從而操縱這個(gè)存儲(chǔ)空間存儲(chǔ)的值。
Java是一種強(qiáng)類型語(yǔ)言,每個(gè)變量都必須聲明其數(shù)據(jù)類型。變量的數(shù)據(jù)類型決定了變量占據(jù)存儲(chǔ)空間的大小。 比如,int a=3; 表示a變量的空間大小為4個(gè)字節(jié)。變量作為程序中最基本的存儲(chǔ)單元,其要素包括變量名,變量類型和作用域。變量在使用前必須對(duì)其聲明, 只有在變量聲明以后,才能為其分配相應(yīng)長(zhǎng)度的存儲(chǔ)空間。
數(shù)據(jù)類型 變量名 = 初始值, 變量名 = 初始值 …;
例如:
public class TestCode01{ public static void main(String[] args){ int a=3,b=4,c=5; //也可以先定義不賦值 int a,b,c; } }
如果你只定義一個(gè)變量,沒(méi)有給變量進(jìn)行賦值的話,那么其實(shí)這個(gè)變量相當(dāng)于沒(méi)有定義;
變量如果沒(méi)有進(jìn)行賦值的話,那么使用的時(shí)候會(huì)出錯(cuò),告訴你:尚未初始化變量;
public class TestCode01{ public static void main(String[] args){ int a; System.out.println(a);//會(huì)報(bào)錯(cuò),未初始化變量a } }
變量的賦值
int a=10;//直接定義并賦值 int b;//先定義在賦值 b=20;
變量不可以重復(fù)定義
整型數(shù)據(jù)類型:
下面以代碼為例:
public class TestCode01{ public static void main(String[] args){ //定義整數(shù)類型的變量: //給變量賦值的時(shí)候,值可以為不同進(jìn)制的: int num1 = 12 ;//默認(rèn)情況下賦值就是十進(jìn)制的情況 System.out.println(num1); int num2 = 012;//前面加上0,這個(gè)值就是八進(jìn)制的 System.out.println(num2); int num3 = 0x12;//前面加上0x或者0X,這個(gè)值就是十六進(jìn)制的 System.out.println(num3); int num4 = 0b10;//前面加上0x或者0B,這個(gè)值就是二進(jìn)制的 System.out.println(num4); //定義byte類型的變量: byte b = 126;//定義了一個(gè)byte類型的變量,名字叫b,賦值為12 System.out.println(b); //注意:超范圍的賦值會(huì)報(bào)錯(cuò)。 short s = 30000; System.out.println(s); int i = 1234; System.out.println(i); //整數(shù)類型默認(rèn)就是int類型的,所以12345678910是一個(gè)int類型的數(shù),對(duì)于int類型來(lái)說(shuō),它超出范圍了 //要想把一個(gè)數(shù)給long類型變量,那么后面加上L(推薦)或者l就可以了 long num5 = 12345678910L; System.out.println(num5); //注意:只有這個(gè)數(shù)超出int類型的范圍了后面才需要加上L,否則無(wú)需加L也可以賦值給long類型: long num6 = 12; System.out.println(num6); } }
(1)十進(jìn)制數(shù)形式,例如: 3.14 314.0 0.314
(2)科學(xué)記數(shù)法形式,例如:
//314e2 314E2 (E的大小寫沒(méi)有區(qū)分) 314E-2 double f = 314e2; //31410^2-->31400.0 double f2 = 314e-2; //31410^(-2)-->3.14
float類型又被稱作單精度類型,尾數(shù)可以精確到7位有效數(shù)字,在很多情況下,float類型的精度很難滿足需求。
而double表示這種類型的數(shù)值精度約是float類型的兩倍,又被稱作雙精度類型,絕大部分應(yīng)用程序都采用double類型。
float類型的數(shù)值有一個(gè)后綴F或者f ,沒(méi)有后綴F/f的浮點(diǎn)數(shù)值默認(rèn)為double類型。
也可以在浮點(diǎn)數(shù)值后添加后綴D或者d, 以明確其為double類型。
PS:有效數(shù)字指的是從左開(kāi)始第一個(gè)不為0的數(shù)到最后一個(gè)數(shù)
public class TestCode02{ public static void main(String[] args){ //浮點(diǎn)類型的常量有兩種形式: //十進(jìn)制形式: double num1 = 3.14; System.out.println(num1); //科學(xué)計(jì)數(shù)法形式: double num2 = 314E-2; System.out.println(num2); //浮點(diǎn)類型的變量: //注意:浮點(diǎn)型默認(rèn)是double類型的,要想將一個(gè)double類型的數(shù)賦給float類型,必須后面加上F或者f float f1 = 3.14234567898623F; System.out.println(f1); //注意:double類型后面可以加D或者d,但是一般我們都省略不寫 double d1 = 3.14234567898623D; System.out.println(d1); //注意:我們最好不要進(jìn)行浮點(diǎn)類型的比較: float f2 = 0.3F; double d2 = 0.3; System.out.println(f2==d2); /* 區(qū)別: = 賦值運(yùn)算: 將等號(hào)右側(cè)的值賦給等號(hào)左側(cè) == 判斷==左右兩側(cè)的值是否相等 :結(jié)果要么相等 要么不相等 ==運(yùn)算符的結(jié)果就是要么是true,要么是false */ } }
Java的字符使用16位的Unicode
編碼表示,而計(jì)算機(jī)語(yǔ)言通常使用ASCII碼
,用8位表示一個(gè)字符。
字符型是用兩個(gè)單引號(hào)括起來(lái)的一個(gè)字符,如’a’,’1’,’A’等。其中,’a’和’A’分別表示ASCII碼中的字符a和A,而’1’表示字符型1,而不是整數(shù)的數(shù)值1。除了一般字符外,Java還定義了一些特殊字符,如圖:
字符型除了常數(shù)值的表示方式與整數(shù)型不同外,在其他方面幾乎可以將它視為一般整數(shù)來(lái)處理。
字符串是指括在兩個(gè)雙引號(hào)之間0個(gè)或多個(gè)字符組成的序列。若兩個(gè)雙引號(hào)之間沒(méi)有任何字符,則為空串。下面是有關(guān)字符串的一些例子:
""
"hello world!"
"hello java"
Java語(yǔ)言把字符串當(dāng)作String類型的一個(gè)對(duì)象來(lái)處理。
boolean類型有兩個(gè)常量值,true
和false
,在內(nèi)存中占一位(不是一個(gè)字節(jié)),不可以使用 0 或非 0 的整數(shù)替代 true 和 false ,這點(diǎn)和C語(yǔ)言不同。 boolean 類型用來(lái)判斷邏輯條件,一般用于程序流程控制 。
public class TestCode03{ public static void main(String[] args){ //創(chuàng)建一個(gè)布爾類型的變量: boolean flag1 = true; System.out.println(flag1); boolean flag2 = false; System.out.println(flag2); boolean flag3 = 5==9; System.out.println(flag3); boolean flag4 = 5<9; System.out.println(flag4); } }
即精度小的類型自動(dòng)轉(zhuǎn)換為精度大的數(shù)據(jù)類型
數(shù)據(jù)類型按精度大小排序?yàn)椋?/p>
在類型轉(zhuǎn)換的時(shí)候需要遵循哪些規(guī)則:
第一條:八種基本數(shù)據(jù)類型中,除boolean
類型不能轉(zhuǎn)換,剩下七種類型之間都可以進(jìn)行轉(zhuǎn)換;
第二條:小容量向大容量轉(zhuǎn)換稱為自動(dòng)類型轉(zhuǎn)換,大容量轉(zhuǎn)換小容量必須使用強(qiáng)制類型轉(zhuǎn),但運(yùn)行時(shí)可能出現(xiàn)精度損失,謹(jǐn)慎使用
第三條:byte,short,char
類型混合運(yùn)算時(shí),先各自轉(zhuǎn)換成 int
類型再做運(yùn)算;
第四條:整數(shù)的默認(rèn)類型是 int
,小數(shù)默認(rèn)是 double
類型浮點(diǎn)型,在定義 float 類型時(shí)必須在數(shù)字后面跟上 F 或者 f。
第五條:浮點(diǎn)數(shù)到整數(shù)的轉(zhuǎn)換是通過(guò)舍棄小數(shù)得到,而不是四舍五入
當(dāng)一個(gè)表達(dá)式中有多種數(shù)據(jù)類型的時(shí)候,要找出當(dāng)前表達(dá)式中級(jí)別最高的那個(gè)類型,然后其余的類型都轉(zhuǎn)換為當(dāng)前表達(dá)式中級(jí)別最高的類型進(jìn)行計(jì)算。
double d2 = 12+1294L+8.5F+3.81+'a';//都轉(zhuǎn)換成最高的double類型,相當(dāng)于= 12.0+1294.0+8.5+3.81+97.0
把精度大的數(shù)據(jù)類型的數(shù)據(jù)賦值給精度小的數(shù)據(jù)類型。
double b=3.1415926; int a=(int)b;//強(qiáng)制轉(zhuǎn)換 高-->低
在進(jìn)行運(yùn)算的時(shí)候:
左=右 : 直接賦值
左<右 :強(qiáng)轉(zhuǎn)
左>右 :直接自動(dòng)轉(zhuǎn)換
以上就是關(guān)于“Java數(shù)據(jù)類型如何定義與使用”這篇文章的內(nèi)容,相信大家都有了一定的了解,希望小編分享的內(nèi)容對(duì)大家有幫助,若想了解更多相關(guān)的知識(shí)內(nèi)容,請(qǐng)關(guān)注億速云行業(yè)資訊頻道。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。