【Java】Java數據類型劃分以及數據類型操作

Java數據類型劃分

Java是一種強類型語言,所以這就意味着必須爲每一個變量聲明一種類型

【總結】

  • 整數就用int,描述小數用double。
  • long一般用於描述日期、時間、內存或文件大小(字節)
  • 如果要進行編碼轉換或者進行二進制流的操作,使用byte(-127~128)
  • char一般在描述中文中會用到(基本忽略)

 


整形 

在Java程序中,任何一個整形常量都是int型

int num = 10;//定義一個整形變量
System.out.printlin(num * 2);

但是在進行整型數據操作的過程之中也會存在數據溢出問題,指的是當已經達到了整型的最大最小值繼續進行數學而可能產生的錯誤數據問題。例如下面這段代碼:

int maxValue = Integer.MAX_VALUE;
int minValue = Integer.MIN_VALUE;
System.out.println(maxValue+1);
System.out.println(minValue-1);

 

很明顯,這時候int就不夠用了。int型既然存在數據溢出問題,解決方案只有一個:更換數據類型

使用long來解決數據溢出問題:

int maxValue = Integer.MAX_VALUE;
long num = maxValue+1L;
System.out.println(num);

大的數據類型轉爲小的類型,必須強轉,但有時會丟失內容,比如下邊這個例子

long num = 2147483648L;
int result = (int) num;
System.out.println(result);

 

  1. 數據範圍小的數據類型可以在數學計算時自動變爲數據範圍大的數據類型
  2. 數據範圍大的數據類型只有在強制類型轉換時才能轉化爲數據類型小的數據類型

既然說到了整型數據,就不得不提到byte。byte類型保存的範圍是:-128~127,下邊聲明一個byte變量:

// 10是int,int的範圍大於byte範圍,理論上要進行強轉,可是這裏沒有強轉,因爲數據在byte內。
byte data = 10 ; // 10是int類型,在byte範圍內
System.out.println(data) ;

同時需要注意的是,如果要將int變量賦值給byte類型,必須強轉

int num = 20;
byte tmp = (byte)num;
System.out.println(tmp);

再來看看這段代碼,它的輸出是爲什麼呢? 

int num = 300;
System.out.println(num);
byte tmp = (byte)num;
System.out.println(tmp);

 


浮點型 

描述小數默認爲double類型

double num = 10.2;// 這是一個小數
System.out.println(num * 2);//num是double類型,2是int類型

float保存範圍小於double,如果要使用float,必須強制類型轉換,在小數後加"F"或者"f"

float res = 1.2f;//定義一個float變量
System.out.println(res);

int型/int型還是int型,如果想要精確計算的話,需要把其中一個變成double型

int a = 10;
int b = 5;
System.out.println(a/b);
System.out.println(a/(double)b);

 


字符型

字符型使用char來表示,並且使用' '來表示字符變量內容,並且可以與int相互轉換

char c = 'A';
int num = c;
System.out.println(c);
System.out.println(num);

  • 大寫字母(A~Z):65(A)~90(Z)
  • 小寫字母(a~z):97(a)~122(z)
  • int型轉爲char型需要強制類型轉換

實現大寫字母轉小寫字母

char c = 'A';
int num = c + 32 ; // char+int=int ;
char x = (char) num ; // int轉char需要強轉
System.out.println(x) ;

注意:字符型數字('0'~'9')與int數字(0~9)不同     

if('0'== 0)一定是false

Java中使用Unicode編碼(一般其他語言採用ASC II編碼),使用16進制編碼,可以保存任何文字信息(包含中文),因此Java對字符的特性支持的比較好。

 


布爾型

布爾類型是表示邏輯狀態的類型。java語言通過關鍵字boolean來定義布爾類型變量,只有true和false兩個值,分別代表布爾邏輯中的“真”和“假”。Java語言雖然定義了boolean這種數據類型,但是隻對它提供了非常有限的支持。布爾類型的聲明如下:

boolean done =true;
boolean error = false;

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章