不同語言的變數類型及位元組長度 (C & Java)

來源:互聯網
上載者:User

一. Java

1.變數定義:一個由標識符定義的資料項目,包括類型、名稱和值三個部分

 

 

2.變數分類:

類型

大小

說明

byte

1位元組(8位)

範圍:-128~127,常用於位元組數組,如將數字存入位元組數組(見小練習2),將字串轉換成位元組數組(見codeh).

short

2位元組(16位)

範圍:-32767~32768

int

4位元組(32位)

int是整形的預設類型,即所有初始化的整形都是int型,如

byte i = 22; byte j = 3; i + j 和5不是byte型而是int型

long

8位元組(64位)

如果將一個整數定義成long型必須在數後加L或l,如256L

float

4位元組(32位)

浮點數類型,如果將整數或浮點定義為float類型,則其後要加f,因為浮點預設類型是double,將整形賦值給float時,如果整形的位元超過32則需加f,否則不f也可以

double

8位元組(64位)

浮點數類型的預設類型,但double類型後可以加D也可不加

 

char

 

2位元組(16位)

用於存放字元,表示Unicode編碼錶中的字元,佔兩個位元組,其中英文字元和數字在儲存時只佔其中的一個位元組,而漢字佔兩個位元組,char可以和int互相轉換。可以賦值為:’ ’但是不可以是’’,可以用ASCII碼標識字元,範圍:01~255,在用字元判斷範圍時常用到ASCII碼。

boolean

1/8位元組(1位)

有兩個值:true,false 可以和0、1互換,是boolean類型的最小定址空間是1byte,即佔用空間1byte,但是只佔其中的1位。

註:雖然float和int位元相同,double和long的位元相同,但是int和long均沒有float

 

和double表示的範圍大,因為double和float有小數位。

 

 

3.資料類型的轉換

 

說明:

較小的類型可以直接賦值給較大的類型,如byte i = 8; int j= i; 較大的類型賦值給較小的類型需要強制轉換,如int m = 256;byte n = (int)m;但是此時會損失精度,因為byte最多儲存8位,但是如果m不超過8位,就不會損失精度。圖示如下:

256:0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 0 0 0 0 0 0 0 0 (32位)

強制轉換成byte型只剩8位0 0 0 0 0 0 0 0 就變成了0,隨時精度,其它幾種數實值型別也是如此(包括char轉換成數值型)。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.