119.Java_基本數據類型

 

1.分類

  • Java數據類型
    • 基本數據類型
      • 數值型
        • 整數類型
        • 浮點類型
      • 字符型
      • 布爾型
    • 引用數據類型
      • 接口
      • 數組


 

2.基本數據類型

2.1 綜述

java的8種基本數據類型(簡單數據類型)java

boolean  byte  short  char  int  long  float  double

 分爲如下四大類型node

1 邏輯類型:boolean
2 整數類型:byte short int long
3 字符類型:char
4 浮點類型:float double

 

 

2.2 簡要介紹

邏輯類型 常量  

true、false數組

true 
false
 
變量

用boolean聲明app

使用關鍵字boolean來聲明邏輯變量,聲明時也能夠賦給初值ide

boolean man, male=true;
boolean x,ok=true,關閉=false; //T
有說1位,有說存儲範圍視內存而定
整數類型 int型 常量  
123//十進制
077//八進制  零開通
0x3ABC//十六進制  零小xyz的x
 
變量 用int聲明,聲明時也能夠賦給初值
int x = 12;
int x= 12,平均=9898,jiafei;  //T

-231~231-1   4字節 32位post

231約21億編碼

byte型 常量 java中不存在該表示法

能夠把範圍 -27~27-1 內的int型常量賦給byte變量spa

???要求0b或0B開頭,如:0b01110011設計

 
變量 用byte聲明
byte tom = 28;

-27~27-1   1字節 8位3d

-128~127

short型 常量

java中不存在改表示法

能夠把範圍 -215~215-1 內的int型常量賦給short變量  
變量 用short聲明
short x = 12;

-215~215-1   2字節 16位

-32768~32767

long型 常量  
108L//十進制
07123L//八進制
0x3ABCL//十六進制
 
變量 用long聲明
long width = 12L;
-263~263-1   8字節 64位
字符類型 char類型常量

英文單引號括起Unicode

表中的一個字符

‘a’ ‘好’  ‘&’
 
轉意字符常量

有些字符(如回車符)不能經過鍵盤輸入到字符串或程序中,就須要使用轉意字符常量

 
例如:\n(換行), \b(退格),\t(水平製表),\‘(單引號),
\「(雙引號),\\(反斜線)等

 
char類型變量 用char聲明
char x = ‘a’;//等價於char x = 97

0~65535  216-1   2字節16位

最高位不是符號位,無負char

浮點類型 float型 常量  
32.1f  32.1F  -23.1f//必有f
2e40f//2×10^40  2乘10的40次方

又被稱做單精度類型,

能夠精確到8位有效數字

變量 用float聲明
float x = 22.76f;

-3.403E38~3.403E38

4字節

double型 常量  
21.3d  21.3  21.3D//D或d可省略
1e-90//1*10^-90

數值精度約是float類型的兩倍,16位有效數字

又被稱做雙精度類型

變量 用double聲明
double width = 32.56D

-1.798E308~1.798E308

8字節

java中沒有無符號的 byte short int long 錯誤聲明:unsigned int m;

 

2.2.1 浮點數

1.不要使用浮點數進行比較,須要比較使用BigDecimal類

float f = 0.1f;
double d = 1.0/10;
System.out.println(f==d);//結果爲false

float d1 = 423432423f;
float d2 = d1+1;
if(d1==d2){
   System.out.println("d1==d2");//輸出結果爲d1==d2
}else{
    System.out.println("d1!=d2");
}

/*由於因爲字長有限,浮點數可以精確表示的數是有限的,於是也是離散的。
 浮點數通常都存在舍入偏差,不少數字沒法精確表示(例如0.1),其結果只能是接近, 但不等於。
二進制浮點數不能精確的表示0.一、0.0一、0.001這樣10的負次冪。
並非全部的小數都能能夠精確的用二進制浮點數表示。

java.math包下面的兩個有用的類:BigInteger和BigDecimal,
這兩個類能夠處理任意長度的數值。
BigInteger實現了任意精度的整數運算。
BigDecimal實現了任意精度的浮點運算。
*/

2.浮點類型float,double的數據不適合在不允許舍入偏差的金融計算領域。
若是須要進行不產生舍入偏差的精確數字計算,須要使用BigDecimal類。

 

2.2.2  字符型

1.char 類型用來表示在Unicode編碼表中的字符。

Unicode編碼被設計用來處理各類語言的文字,它佔2個字節,可容許有65536個字符

’A’是一個字符,它與」A」是不一樣的,」A」表示含有一個字符的字符串。

String類,實際上是字符序列(char sequence)

 

2.字符型的十六進制值表示方法

 Unicode具備從0到65535之間的編碼,

一般用從’\u0000’到’\uFFFF’之間的十六進制值來表示(前綴爲u表示Unicode) 

char c = '\u0061';

 

3. Java 語言中還容許使用轉義字符 ‘\’ 來將其後的字符轉變爲其它的含義

轉義符 含義 Unicode值
\b 退格backspace \u0008
\n 換行 \u000a
\r 回車 \u000d
\t 製表符tab \u0009
\「 雙引號 \u0022
\' 單引號 \u0027
\\ 反斜槓 \u005c
     

 

 

2.3 類型轉換運算

2.3.1高低類型轉換

1.基本類型從低到高

byte  short  char  int  long  float  double

2.低  ——>  高

系統自動完成數據類型轉換
float x = 100;//輸出x爲100.0

3.高  ——>  低

必須用類型轉換運算
格式:(類型名)要轉換的值;
int x = (int)34.89;//輸出爲34

4.當將一種類型強制轉換成另外一種類型,而又超出了目標類型的表數範圍,就會被截斷成爲一個徹底不一樣的值

int x = 300;
byte bx = (byte)x;    //值爲44  取低的範圍內的數

5.不能在布爾類型和任何數值類型之間作強制類型轉換

 

2.3.2字符串型數據與整型數據相互轉換

1.字符串轉換成數值型數據
數字字符串型數據轉換成byte、short、int、float、double、long等數據類型,能夠分別使用表3.7所提供的Byte、Short、Integer、Float、Double、Long類的parseXXX方法。

表 字符串轉換成數值型數據的方法

 

 

例如:
String MyNumber="1234.567"; //定義字符串型變量MyNumber
float MyFloat=Float.parseFloat(MyNumber);
//1234.567
例如:
String MyNumber="1234a.567"; //定義字符串型變量MyNumber
float MyFloat=Float.parseFloat(MyNumber);
//1234

 

 

 

 

2.4 常量和變量

2.4.1 常量

1)常量一般指的是一個固定的值,

例如:一、二、三、’a’、’b’、true、false、」helloWorld」等,

通常將稱爲字面常量

2)在Java語言中,主要是利用關鍵字final來定義一個常量,

常量一旦被初始化後不能再更改其值,

使用final修飾的PI等稱爲符號常量

常量:大寫字母和下劃線:MAX_VALUE

聲明格式爲:
    final  type  varName = value;

常量的聲明及使用:
public class TestConstants { public static void main(String[] args) { final double PI = 3.14; // PI = 3.15; //編譯錯誤,不能再被賦值! double r = 4; double area = PI * r * r; double circle = 2 * PI * r; System.out.println("area = " + area); System.out.println("circle = " + circle); } }

 

爲了使用上的方便Java提供了數值型數據的最大值與最小值的標識符及常量值。如表3.4所示。

表3.4 數值型常量的特殊值代碼

 

 強制轉換前判斷是否在範圍內防止失真,如double到float

 

 

2.4.2 變量

Java是一種強類型語言,每一個變量都必須聲明其數據類型,能夠是基本類型,也能夠是引用類型

變量的分類:局部變量、實例變量、靜態變量

變量做爲程序中最基本的存儲單元,其要素包括變量名,變量類型和做用域。

變量在使用前必須對其聲明, 只有在變量聲明之後,才能爲其分配相應長度的存儲空間。

格式爲:type  varName [=value][,varName[=value]...]; 
//[]中的內容爲可選項,便可有可無
數據類型  變量名  [=初始值] [,變量名  [=初始值]…];
double  salary;
long  earthPopulation;
int  age;

 

 

 

相關文章
相關標籤/搜索