歡迎來到Linux教程網
Linux教程網
Linux教程網
Linux教程網
您现在的位置: Linux教程網 >> UnixLinux >  >> Linux編程 >> Linux編程

Java基本數據類型及運算符小結

Java數據類型及運算符

1.Java數據類型分為基本數據類型和引用數據類型

(1).基本數據類型:8種

a).boolean:在java中boolean 只能去true 或者false

b).byte:1個字節,八位。取值范圍:-2的7次方~2的7次方-1。也就是(-128~127)

c).short:2個字節,16位。取值范圍:-2的15次方~2的15次方-1

d).int:4個字節,32位。取值范圍:-2的31次方~2的31次方-1

e).long:8個字節,64位。取值范圍:-2的63次方~2的63次方-1

f)字符型:char:是單引號中的內容,且只能有一個字符。2個字節,16位。char類型可以作為一個無符號的整數,取值0-65535.有數字和字符的雙重特性,能夠參與數學運算。

g).浮點型:java中小數默認為double類型。Double和float

h)float:4個字節

i)double:8個字節

j)整數類型:byte、short、int、long

(2).引用數據類型:數組、類、接口、枚舉等

(3)java中采用了Unicode編碼

2.switch中的變量只能是byte、short、char、int、枚舉類型

3.if和switch的區別

If可以取范圍值,可以去固定值。Switch只能取固定值,且取值類型固定。

4.基本數據類型之間的轉換:

(1).char-->int

(2).byte-->short-->int-->long-->float-->double

a).表示數的范圍之內的自動轉換

b).小范圍到大范圍能自動轉換

c).子類到父類的轉換

d)基本數據類型和包裝類(Integer、Double、Float等)之間的轉換

(3).如果不能自動轉換,只能強制類型轉換。語法:(要轉換的類型)要轉換的變量。

5.運算時幾點注意的地方:

a).對於多種類型的混合運算,都是先轉換為大范圍的之後在運算

b).所有小於int(char、byte、short)的運算,都是先轉換為int在運算

c).基本數據類型和字符串用+相拼接,都是先轉換為字符串在拼接。拼接完之後就是字符串。

運算符

1.算數運算符:+、—、*、/、%

2.自增自減運算符:++、--

(1).後++:先計算,在自增。前++:先自增,在運算。

(2)注意:常量不能自增。

3.賦值運算符:=、+=、-=、*=、/=等

(1).注意+=是一個運算符,內置強制轉換。

4.邏輯運算符:&&、||、!

5.位運算符:&、|、^、~

6.邏輯運算符只能位運算符之間的區別:

(1).邏輯運算符只能操作boolean表達式,會產生短路

(2)位運算符除了~之外也可以操作布爾表達式,還可以操作整形數據。且不會產生短路

(3)三目運算符:布爾表達式?結果1:結果2。如果布爾表達式的值為true,得到了結果1,為false得到了結果2。

7.移位運算符:>> 、<<等。

下面一段代碼介紹部分運算方法

package day10;
public class TestInt {
public static void main(String[] args) {
byte b1 = 1;
byte b2 = 2;
//小於int 轉換為int在計算
int ni1 = b1+b2;
System.out.println("ni1:"+ni1);//ni1:3
long l1 = 2;
int ni2 = 2;
//int與long相加,先轉換為大范圍long在計算
long l2 = l1+ni2;
System.out.println("l2:"+l2);//l2:4
int ni3 = 2;
String str1 = "asd";
//基本數據類型和字符串用+相拼接,都是先轉換為字符串在拼接,拼接後是字符串
String str2 = ni3+str1;
System.out.println("str2:"+str2);//str2:2asd
//基本數據類型和包裝類之間的轉換
int ni4 = Integer.parseInt("123");
System.out.println("ni4:"+ni4);//ni4:123
int ni5 = 2;
int ni6 = 2;
//賦值運算符,內置強制類型轉換
ni6 += ni5;
System.out.println("ni6:"+ni6);//ni6:4
//位運算
int ni7 = 8|2;
System.out.println("ni7:"+ni7);//ni7:10
//邏輯運算符
boolean f = b1>b2||b1<0;
System.out.println("f:"+f);//f:false
//三目運算符
int ni8 = b1>b2?b1:b2;
System.out.println("ni8:"+ni8);//ni8:2
}
}

Copyright © Linux教程網 All Rights Reserved