1. 程式人生 > >Java 資料型別總結

Java 資料型別總結

1.java的資料型別

8 種類型表示範圍如下:

byte:8位,最大儲存資料量是256,存放的資料範圍是-128~127之間。

short:16位,最大資料儲存量是65536,資料範圍是-32768~32767之間。

int:32位,最大資料儲存容量是2的32次方減1,資料範圍是負的2的31次方到正的2的31次方減1。

long:64位,最大資料儲存容量是2的64次方減1,資料範圍為負的2的63次方到正的2的63次方減1。

float:32位,資料範圍在3.4e-45~1.4e38,賦值時可以加上f或F也可以不加。

double:64位,資料範圍在4.9e-324~1.8e308,賦值時可以加d或D也可以不加。

boolean:只有true和false兩個取值。

char:16位,儲存Unicode碼,用單引號賦值。

float f1=12;//可加 可不加
Float f2=12F;//必須加
Float f3=12f;//必須加
        
long l1=12;//可加 可不加
Long l2=12L;//必須加
Long l3=12l;//必須加
型別 二進位制位數 預設值 對應的封裝類
byte 8 0 Byte
short 2*8 0 Short
int 4*8 0 Integer
long 8*8
0 Long
float 4*8 0.0 Float
double 8*8 0.0 Double
char 2*8 空格 Character
boolean false Boolean

整型

byte的取值範圍為-128~127(-2的7次方到2的7次方-1)

short的取值範圍為-32768~32767(-2的15次方到2的15次方-1)

int的取值範圍為(-2147483648~2147483647)(-2的31次方到2的31次方-1)

long的取值範圍為(-9223372036854774808~9223372036854774807)(-2的63次方到2的63次方-1)

浮點型

學過計算機原理的應該都知道,這兩個型別的區別在於精度不同,double比float精度更高,範圍更大。

單精度:float 3.402823e+38 ~ 1.401298e-45

(e+38表示是乘以10的38次方,同樣,e-45表示乘以10的負45次方)

雙精度:double 1.797693e+308~ 4.9000000e-324

字元型

char是按照字元儲存的,在程式碼中用引號,不管英文還是中文,固定佔用佔用2個位元組,用來儲存Unicode字元。範圍在0-65536。例如:

char s=‘碼’;1

char可以儲存中文,那個問題來了:

為什麼char型的可以儲存utf-8的字元呢?

首先,GBK的漢字是兩個位元組的,而utf-8是三個位元組的。在java的內部儲存中,都是以unicode為主,一個漢字轉化為unicode是兩個位元組,當漢字進行儲存後,java會把漢字轉化成unicode編碼,這樣子就可以儲存進去了。而utf-8,GBK只不是過外在軟體的編碼格式,並不是內部儲存的格式。

其實在儲存漢字的時候,utf-16的效果要比utf-8優秀,因為utf-16只需要2byte的大小就行。

布林型變數

布林型變數還有true和false兩種,在C語言中可以用1表示true,0表示false,但是在java中是不允許的。

String

很多人會把String當成是java的基本來型別之一,其實並不是。String是一個應用資料型別,是java中的一個類。String型別的引數用雙引號表示。例如:

String s="12345";

強制型別轉化

   自動型別轉化:

   byte–>short–>int–>long–>float–>double

   例如:

   int a = 5;long b=a;//這是成立的,反過來byte b=a;就不成立了,需要強制型別轉化12

   強制型別轉化:

   例如:

   int a = 8;byte b=(byte)a;//強制型別轉化是在引數前用括號加上資料型別進行轉化12。但是這種方法並不是全    部情況都使用,需要看情況而定,因為這樣子

          1、會損失精度 。

          2、容易超出取值範圍出錯。

java引用型別

java有5種引用型別,分別是類,介面,陣列,列舉,註解,這裡不過多介紹

封裝類

java的八大資料型別都有對應的封裝類。

在實際程式設計中,基本使用的是基本資料型別來儲存資料,這主要是因為如果用封裝類,對於程式的開銷就會變大,而這在實際中是完全沒有必要的。

那為什麼還要設定類呢?因為在java中,泛型類包含了預定義的集合,在這裡使用的是物件型別,無法直接使用基本資料型別,所以定義了封裝類,提供這些基本資料型別的包裝容器。而且封裝類中提供了有用的方法,可以對進行資料的操作。這裡不做過多介紹

拆箱裝箱(Autoboxing and unboxing)

舉例:

Integer a = 100; //這是自動裝箱(編譯器呼叫的是valueOf(int i)) 

int b = new Integer(100);// 這是自動拆箱

相關推薦

Java 資料型別總結

1.java的資料型別 8 種類型表示範圍如下: byte:8位,最大儲存資料量是256,存放的資料範圍是-128~127之間。 short:16位,最大資料儲存量是65536,資

java的8種基本資料型別總結

java中只有8種基本資料型別,除了這8種,其餘的都是引用型別。 分類: 第一類:邏輯型 boolean 第二類: 整型 byte short int long 第三類:字元型 char 第四類:浮

Java 內建資料型別總結

wechat:812716131 ------------------------------------------------------ 技術交流群請聯絡上面wechat ----------------------------------------------

java資料型別與運算子

資料型別轉換:byte<short(char)<int<long<float<double 算數、賦值、關係運算符、邏輯運算子、位運算子 1、字元+任何資料型別都是字串連線 2、當有賦值運算子的時候,++在後面,那麼先賦值後自身加一;++在前面,那麼自

java資料型別型別轉換(必須清楚)

資料型別分類: 主要分為 基本型別、引用型別兩大類;   基本型別 轉換原則  型別轉換主要在在 賦值、方法呼叫、算術運算 三種情況下發生。  另外還有是直接數的賦值:先通過直接數判斷其型別,然後基本原則和上面談到的賦值

mysql 資料型別總結

mysql 資料型別總結 數值型 整形(以下為signed,unsigned為無符號,自推) 型別 佔用位元組 範圍 tinyint 1 (-128,127)

mysql java資料型別對照表

Java資料型別和MySql資料型別對應表 java mysql 資料型別對照 型別名稱 顯示長度 資料庫型別 JAVA型別 J

關於java資料型別的自己的見解

  java的資料型別:1)基本資料型別:bbcs(boolean,byte,char,short),int,long,float,double      2)引用資料型別:陣列,類,介面。 基本資料型別傳遞採取的是值傳遞的方式,值傳遞時引數的改變並不

JAVA——資料 型別

Java資料型別 1,基本資料型別 2,引用資料型別 具體分類如下: 使用整型時最好使用int 型 若進行編碼轉換或二進位制的操作時,使用byte (一)整型——基本資料型別 · 整型基本使用int型。 · 但是使用int型的時候也會存在資

Python基礎學習篇-7-各種資料型別總結(一)

Python3 中有六個標準的資料型別: Number(數字) String(字串) List(列表) Tuple(元組) Set(集合) Dictionary(字典) 其中: 不可變資料(3 個):Number(數字

day14 基本資料型別總結

基本資料型別分類 1.可變與不可變 可變:字典、列表 不可變:數字、字串、元組 name = 'alex' print(name) print(id(name)) ##輸處name在記憶體中的地址 name = 'hell0' ##修改name變數 prin

Java 資料型別之浮點型別

在Java中有兩種浮點型別,分別為float和double,分別佔4個位元組和8個位元組,double型別的精度值為float型別的兩倍。 float型別的數值後面有一個字尾F或者f,沒有後綴F的浮點數值預設為double型別。也可以在浮點數值後面新增字尾D或d。 當資料發生溢位和出錯的情況

java 資料型別,運算子,進位制轉換,資料結構

Java資料型別 對於java來說,我們將變數分為兩個大類 宣告變數符合以下規則 變數型別 變數名=初值; 使用小駝峰命名; 類級變數命名使用大駝峰; 編碼表:二進位制和生活中文字的對應關係表。 ASCII碼錶:美國統一二進位制轉換編碼表。 GB2312

Java——資料型別和運算子

1、註釋可以提高程式的可讀性,可分為:單行註釋 //多行註釋 /.../文件註釋 /*.../ 2、識別符號的命名規則:識別符號必須以字母、下劃線、美元符號$開頭。 識別符號其它部分可以是字母、下劃線“”、美元符“$”和數字的任意組合。Java 識別符號大小寫敏感,且長度無限制。識別符號不可以是Java的關

通過反射轉換java資料型別

最近專案中遇到通過類似hibernate又不是hibernate查詢出來的資料是一個List<Object[]>型別,不是自己想要的key,value型別,然後抽空寫了一個工具類,貌似這樣破壞了java的封裝性,標記一下,有不對的地方歡迎指出來 實體類: &nb

win32資料型別總結

win32資料型別一覽 Windows資料型別 本質型別 位元組數 定義過程(來歷) 含義 ATOM unsigned short 2 unsigned short→WORD→ATOM 在Atom表中,一鍵(16位整數)一值(一個String)為一個Atom。 BOOL

JDBC資料型別Java資料型別、標準sql型別

本概述是從《JDBCTM Database Access from JavaTM: A Tutorial and Annotated Reference》這本書中摘引來的。JavaSoft 目前正在準備這本書。這本書是一本教程,同時也是 JDBC 的重要參考手冊,它將作為 Java 系列的組成部份,

Java SE基礎部分--02.Java資料型別轉換、運算子、方法入門

學習目標: 1、資料型別轉換、 2、算數運算子、 3、賦值運算子、 4、比較運算子、 5、邏輯運算子、 6、三元運算子、 7、方法定義和呼叫 一、資料型別轉換: 1、資料型別轉換分為:隱式型別轉換、強制型別轉換。 隱式轉換:是將容量小的型別自動轉成容量大的

java資料型別的轉換

自動型別轉換 條件:1,轉換前後的資料型別相容;          2,轉換後的資料型別的表示範圍要比轉換前的大; 自動轉換按從低到高的順序轉換。不同型別資料間的優先關係如下:     低-----------------------------------------

有關Java資料型別轉換

資料型別轉換 話不多說,先來圖片 基本資料型別與引用資料型別 基本:boolean, char,byte,short,int,long,float,double 引用:String,引用型別具體可分為:陣列、類和介面 隱式轉換 隱式轉換也叫作自動型別轉換