java中的數據類型
我要詳細一點的介紹java中的數據類型分兩大類分別是基本類型和引用數據類型。
一、基本類型
1)Java中的數據類型有八種,即基本類型。具體如下:
數據類型 位數 取值范圍:
Boolean 1 True|False
Byte 8 -128~127
Short 16 -32768~32767
Int 32 -2e31~2e31-1
Long 64 -2e63~2e63-1
Float 32 略
Double 64 略
Char 16 0~65535
‘ /u0000’ ~’uFFFF‘
二、引用數據類型
1)定義一個byte變量 如:byte b= -256;
由于-256超出了’Byte’的取值范圍,所以要使程序不報錯,有一下幾種解決方法:
A:更改變量的數據類型(如:將byte改為int);
B:更改變量名的賦值,使其包括在變量的數據類型的值域內;
C:進行強制轉換:如: byte b=(byte)-256:
‘進行強制轉換后,雖然程序不在報錯,但是有可能會使原值的精度收到影響’
D:定義一個浮點類型數時,記得要在數值的后面加上“f”或“F”。(如:Float f=10000.0f;)
E:若定義 Char c=a;定義 int n=c;則輸出的n值為“a“的ASCII值,即97。
2)引用數據類型的定義
A:對象都是引用數據類型
B:應用類型使用NEW調用構造方法進行賦值
C:在Java中,除了基本數據類型以外,其余的全都屬于引用數據類型, 如:
a:API中的類,如String,File等;
b:數據;
c:自定義的類,如Cars,Student
d:對象全部是引用數據類型。
擴展資料
其他數據類型:
在java中,String本身也提供了很多的方法供我們使用:
獲取到指定索引位置的字符:char c = 字符串.charAt(索引位置);
獲取到指定索引位置的字符:char c = 字符串.charAt(索引位置);
獲取第一次出現在字符串中的字符:int index = 字符串.index('a');
獲取在字符串中字符的索引位置:int index = 字符串.index('a',1);
如果想比較兩個字符串是否相等:字符串.equeals(字符串);
判斷字符串是否為空:字符串.isEmpty();
獲取字符串的長度:字符串.length();
根據某一個條件,將字符串進行分割:字符串.split("abc");
根據條件取出內容:字符串.substring(開始位置,結束位置);
JAVA數據類型分基本數據類型和引用數據類型。
基本數據類型
Java里面包含8個基本數據類型,分別是:
boolean、byte、char、short、int、float、douboe、long
byte 字節
byte是JAVA中最小的數據類型,它在內存中占8位(8個bit),取值范圍從-128到127
賦值:byte I = 127
short 短整型
short類型在內存中占2個字節,取值范圍從 -32768到32767
賦值:short i = 32767;
char 字符型
char類型在內存中占2個字節。表示一個字符,也可以使用ASCII碼范圍內的值來給char型的變量賦值。由于字符在內存中的取值不存在負數范圍,所有取值范圍從 0 到 65535
賦值:char i = ‘a’; 或者 char i = 97;
int 整型
int型在內存中占4個字節。取值范圍從 -2147483648 到 2147483647
賦值:int i = 10;
float 單精度浮點型
float型在內存中占4個字節。取值范圍從 -3.4E38 到 3.4E38
賦值:float i = 1.0f;
long 長整型
long型在內存中占8個字節。取值范圍從 -9223372036854775808 到 9223372036854775807
double 雙精度浮點型
double 型在內存中占8個字節。取值范圍從 -1.7E308 到 1.7E308
boolean 布爾型
boolean類型只有兩個值:true和false。
基本數據類型的相互轉換
轉型規則
JAVA中所有的數字變量都是有符號(正負)的。
JAVA不允許類型的隨意轉換。只有數字變量可以進行轉換,但是不能隨意。
帶有小數點的數字變量默認都為double型。定義float型必須進行強制類型轉換。
所占字節數小的數字型變量賦值給所占字節數比它大的類型時不用強制類型轉換,此時是自動轉型。
int型變量賦值給char型變量時,JVM會以int型變量值到ASCII碼表中查找出所對應的字符,再賦值給char型變量。反之也是。但是遵循第4條規則。
初始化簡單數據類型時要注意賦值的范圍,超出則會產生編譯錯誤。
基本數據類型默認初值
類型 初始值
boolean false
byte 0
char 0
short 0
int 0
float 0.0
double 0.0
long 0
基本數據類型默認初值表
引用數據類型
JAVA中,非簡單數據類型的類型都是引用數據類型。
Java一共有8種基本數據類型(原始數據類型):
類型 存儲要求 范圍(包含) 默認值 包裝類
整 int 4字節(32位) -231~ 231-1 0 Integer
數 short 2字節(16位) -215~215-1 0 Short
類 long 8字節(64位) -263~263-1 0 Long
型 byte 1字節(8位) -27~27-1 0 Byte
浮點 float 4字節(32位) -3.4e+38 ~ 3.4e+38 0.0f Float
類型 double 8字節(64位) -1.7e+308 ~ 1.7e+308 0 Double
字符 char 2字節(16位) u0000~uFFFF(‘’~‘?’) ‘0’ Character
(0~216-1(65535))
布爾 boolean 1/8字節(1位) true, false FALSE Boolean
java的基本數據類型有哪些
整數類型:
byte:字節占用 1字節 8位,用來表達最小的數據單位,儲存數據長度為 正負 127;
short:字節占用 2字節 16位,儲存數值長度為 -32768-32767
int:字節占用 4字節 32位,最為常用的整數類型,儲存長度為,-2^31-1~2^31 (21 億)
long:字節占用 8字節 64位,當到達int數值極限時使用,儲存長度為 看圖片:
浮點數類型:
float:單精度浮點型 32位 取值范圍 3.4e-38~3.4e-38
double:雙精度浮點型 64位 ,java中默認的浮點類型 取值范圍 1.7e-308~1.7e-308
字符類型:
char:16位 ,java字符使用Unicode編碼;
布爾類型
boolean : true 真 和 false 假
引用數據類型:
類 class
接口 interface
數組
java基本數據類型就8種,記住就好了。除了這些都是引用型的了。
java四類八種基本數據類型
第一類:整型 byte short int long
第二類:浮點型 float double
第三類:邏輯型 boolean(它只有兩個值可取true false)
第四類:字符型 char
在棧中可以直接分配內存的數據是基本數據類型。
引用數據類型:是數據的引用在棧中,但是他的對象在堆中。
要想學好Java必須知道各種數據的在內存中存儲位置。 對內存有了很好的了解,可以有助你分析程序。
字節:
boolean 布爾型 1/8
byte 字節類型 1
char 字符型 2 一個字符能存儲一個中文漢字
short 短整型 2
int 整數類型 4
float 浮點類型(單精度) 4
long 長整形 8
double 雙精度類型(雙精度) 8
java中默認的整數類型是int類型,如果要定義為float型,則要在數值后加上l或L;
默認的浮點型也是雙精度浮點,如果要定義為float型,則要在數值后加上f或F。
一個字節等于8位,一個字節等于256個數,就是-128到127一共256。
kB就是kBytes Bytes就是“字節”的意思!
K就是千的意思,因為計算機是通過二進制來計算,10個1正好是1024
1111111111(二進制)=1024(十進制)
1Bytes(字節)=8bit(比特)
一個英文字母或一個阿拉伯數字就是一個字符,占用一個字節
一個漢字就是兩個字符,占用兩個字節。
一般講大小是用Bytes,大寫的“B”,講網絡速率是用bit,注意是小寫的“b”。
例:一個文件有8MBytes
例:我下載文件的速率是256KB/s,即2Mbit,這通常就是我們寬帶上網的速率。
基本數據類型自動轉換
byte->short,char -> int -> long
float -> double
int -> float
long -> double
記住:小可轉大,大轉小會失去精度!!!
java的基本數據類型可以簡稱為“四類八種”:
1)四種整數類型(byte、short、int、long):整數數據類型默認是int
2)兩種浮點數類型(float、double)
3)一種字符類型(char)
4)一種布爾類型(boolean):true 真 和 false 假
變量就是申請內存來存儲值。也就是說,當創建變量的時候,需要在內存中申請空間。
內存管理系統根據變量的類型為變量分配存儲空間,分配的空間只能用來儲存該類型數據。
布爾類型(boolean)、字節類型(byte)、短整型(short)、整形(int)、長整形(long)、字符型(char)、單精度浮點類型(float)、雙精度浮點類型(double)
java語言中,128位的文件hash值用什么數據類型存儲比較好?要求定長。
用16個字節的byte a[]=byte[16];
或者2個long存儲,long a[]=new long[2];
用位運算處理java的“有符號”
比如取有符號的byte,用容量大一級的short或int保存轉換后的無符號數據;
byte b=-1;
short s=(short) b&0xff; //轉換成無符號
取long的最高字節,(包括符號位在內)
long l=l>>>56;
數組行不
請問你是怎么解決的?我最近也遇到這個問題……
相關推薦:
電子合同糾紛解決(簽電子合同糾紛怎么解決)
現戶籍所在地怎么填寫(戶籍所在地怎么填寫)
超生新生兒如何上戶(超生如何給孩子上戶口)
行政處罰會留案底嗎(行政處罰決定書會留案底嗎)
公民如何保護生命健康權(法律如何保護我們的健康)