小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Java編程基礎(chǔ)----Java中有哪些數(shù)據(jù)類型?

 昵稱22369024 2015-04-22

Java中的數(shù)據(jù)類型分為基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。

引用數(shù)據(jù)類型分3種:類,接口,數(shù)組

基本數(shù)據(jù)類型又分?jǐn)?shù)值類型和布爾類型

布爾類型:boolean(邏輯型) true or false 默認(rèn)是false

數(shù)值類型分定點(diǎn)類型和浮點(diǎn)類型

定點(diǎn)類型分字符型和整數(shù)類型

整數(shù)類型分

byte(字節(jié)類型) 一個(gè)byte 8位,占用1個(gè)字節(jié) 例32B 默認(rèn)是0

取值范圍是-27—27-1     -128~127

short(短整型) 一個(gè)short 16位,占用2個(gè)字節(jié) 例32S默認(rèn)是0

取值范圍是-215—215-1     -32768~32767

int(整型)        一個(gè)int 32位,占用4個(gè)字節(jié)    例32默認(rèn)是0

取值范圍是-231—231-1    -2147483648~2147483647

long(長(zhǎng)整型)    一個(gè)long 64位占用8個(gè)字節(jié) 例32L默認(rèn)是0

取值范圍是-263—263-1     -9223372036854774808~9223372036854774807

字符型 char    用‘單個(gè)字符’表示 無(wú)符號(hào)    unicode字符 例 ’a’ ‘1’

取值范圍是\u0000~\uFFFF

浮點(diǎn)類型分

float(單精度浮點(diǎn)型) 一個(gè)float 32位,占用4個(gè)字節(jié) 例3.2F默認(rèn)是0.0f

取值范圍是3.4e-038—3.4e+038

 

double(雙精度浮點(diǎn)型) 一個(gè)double 64位,占用8個(gè)字節(jié) 例3.2 默認(rèn)是0.0

取值范圍是1.7e-038—1.7e+038

數(shù)據(jù)類型的自動(dòng)轉(zhuǎn)換

(byte,short,char)--int--long--float—double

簡(jiǎn)單數(shù)據(jù)類型之間的轉(zhuǎn)換又可以分為:

●低級(jí)到高級(jí)的自動(dòng)類型轉(zhuǎn)換

低級(jí)變量可以直接轉(zhuǎn)換為高級(jí)變量,稱之為自動(dòng)類型轉(zhuǎn)換

如果低級(jí)類型為char型,向高級(jí)類型(整型)轉(zhuǎn)換時(shí),會(huì)轉(zhuǎn)換為對(duì)應(yīng)ASCII碼值

對(duì)于byte,short,char三種類型而言,他們是平級(jí)的,因此不能相互自動(dòng)轉(zhuǎn)換,可以使用強(qiáng)制類型轉(zhuǎn)換。

byte,short,int三種類型都是整型,因此如果操作整型數(shù)據(jù)時(shí),最好統(tǒng)一使用int型。

●高級(jí)到低級(jí)的強(qiáng)制類型轉(zhuǎn)換

將高級(jí)變量轉(zhuǎn)換為低級(jí)變量時(shí),情況會(huì)復(fù)雜一些,你可以使用強(qiáng)制類型轉(zhuǎn)換,會(huì)導(dǎo)致溢出或精度的下降

●包裝類過(guò)渡類型能夠轉(zhuǎn)換

在我們討論其它變量類型之間的相互轉(zhuǎn)換時(shí),我們需要了解一下Java的包裝類,所謂包裝 類,就是可以直接將簡(jiǎn)單類型的變量表示為一個(gè)類,在執(zhí)行變量類型的相互轉(zhuǎn)換時(shí),我們會(huì)大量使用這些包裝類。Java共有六個(gè)包裝類,分別是 Boolean、Character、Integer、Long、Float和Double,從字面上我們就可以看出它們分別對(duì)應(yīng)于 boolean、char、int、long、float和double。而String和Date本身就是類。所以也就不存在什么包裝類的概念了。

在進(jìn)行簡(jiǎn)單數(shù)據(jù)類型之間的轉(zhuǎn)換(自動(dòng)轉(zhuǎn)換或強(qiáng)制轉(zhuǎn)換)時(shí),我們總是可以利用包裝類進(jìn)行中間過(guò)渡。

一般情況下,我們首先聲明一個(gè)變量,然后生成一個(gè)對(duì)應(yīng)的包裝類,就可以利用包裝類的各種方法進(jìn)行類型轉(zhuǎn)換了。例如:

例1,當(dāng)希望把float型轉(zhuǎn)換為double型時(shí):

CODE:


float f1=100.00f;

   Float F1=new float(f1);

   Double d1=F1.doubleValue();//F1.doubleValue()為Float類的返回double值型的方法


當(dāng)希望把double型轉(zhuǎn)換為int型時(shí):

CODE:


   double d1=100.00;

     Double D1=new Double(d1);

     int i1=D1.intValue();


當(dāng)希望把int型轉(zhuǎn)換為double型時(shí),自動(dòng)轉(zhuǎn)換:

CODE:


    int i1=200;

     double d1=i1;


簡(jiǎn)單類型的變量轉(zhuǎn)換為相應(yīng)的包裝類,可以利用包裝類的構(gòu)造函數(shù)。即:

Boolean(boolean value)、Character(char value)、Integer(int value)、Long(long value)、Float(float value)、Double(double value)

而在各個(gè)包裝類中,總有形為××Value()的方法,來(lái)得到其對(duì)應(yīng)的簡(jiǎn)單類型數(shù)據(jù)。利用這 種方法,也可以實(shí)現(xiàn)不同數(shù)值型變量間的轉(zhuǎn)換,例如,對(duì)于一個(gè)雙精度實(shí)型類,intValue()可以得到其對(duì)應(yīng)的整型變量,而doubleValue() 可以得到其對(duì)應(yīng)的雙精度實(shí)型變量。

3 字符串型與其它數(shù)據(jù)類型的轉(zhuǎn)換

通過(guò)查閱類庫(kù)中各個(gè)類提供的成員方法可以看到,幾乎從java.lang.Object類派 生的所有類提供了toString()方法,即將該類轉(zhuǎn)換為字符串。例 如:Characrer,Integer,Float,Double,Boolean,Short等類的toString()方法toString()方 法用于將字符、整數(shù)、浮點(diǎn)數(shù)、雙精度數(shù)、邏輯數(shù)、短整型等類轉(zhuǎn)換為字符串。如下所示:

CODE:


int i1=10;

float f1=3.14f;

double d1=3.1415926;

Integer I1=new Integer(i1);//生成Integer類

Float F1=new Float(f1); //生成Float類

Double D1=new Double(d1); //生成Double類

//分別調(diào)用包裝類的toString()方法轉(zhuǎn)換為字符串

String si1=I1.toString();

String sf1=F1.toString();

String sd1=D1.toString();

Sysytem.out.println("si1"+si1);

Sysytem.out.println("sf1"+sf1);

Sysytem.out.println("sd1"+sd1);


五、將字符型直接做為數(shù)值轉(zhuǎn)換為其它數(shù)據(jù)類型

將字符型變量轉(zhuǎn)換為數(shù)值型變量實(shí)際上有兩種對(duì)應(yīng)關(guān)系,在我們?cè)诘谝徊糠炙f(shuō)的那種轉(zhuǎn)換中,實(shí) 際上是將其轉(zhuǎn)換成對(duì)應(yīng)的ASCII碼,但是我們有時(shí)還需要另一種轉(zhuǎn)換關(guān)系,例如,'1'就是指的數(shù)值1,而不是其ASCII碼,對(duì)于這種轉(zhuǎn)換,我們可以使 用Character的getNumericValue(char ch)方法。

六、Date類與其它數(shù)據(jù)類型的相互轉(zhuǎn)換

整型和Date類之間并不存在直接的對(duì)應(yīng)關(guān)系,只是你可以使用int型為分別表示年、月、日、時(shí)、分、秒,這樣就在兩者之間建立了一個(gè)對(duì)應(yīng)關(guān)系,在作這種轉(zhuǎn)換時(shí),你可以使用Date類構(gòu)造函數(shù)的三種形式:

Date(int year, int month, int date):以int型表示年、月、日

Date(int year, int month, int date, int hrs, int min):以int型表示年、月、日、時(shí)、分

Date(int year, int month, int date, int hrs, int min, int sec):以int型表示年、月、日、時(shí)、分、秒

在長(zhǎng)整型和Date類之間有一個(gè)很有趣的對(duì)應(yīng)關(guān)系,就是將一個(gè)時(shí)間表示為距離格林尼治標(biāo)準(zhǔn)時(shí)間1970年1月1日0時(shí)0分0秒的毫秒數(shù)。對(duì)于這種對(duì)應(yīng)關(guān)系,Date類也有其相應(yīng)的構(gòu)造函數(shù):Date(long date)

獲取Date類中的年、月、日、時(shí)、分、秒以及星期你可以使用Date類的 getYear()、getMonth()、getDate()、getHours()、getMinutes()、getSeconds()、 getDay()方法,你也可以將其理解為將Date類轉(zhuǎn)換成int。

而Date類的getTime()方法可以得到我們前面所說(shuō)的一個(gè)時(shí)間對(duì)應(yīng)的長(zhǎng)整型數(shù),與包裝類一樣,Date類也有一個(gè)toString()方法可以將其轉(zhuǎn)換為String類。

有時(shí)我們希望得到Date的特定格式,例如20020324,我們可以使用以下方法,首先在文件開(kāi)始引入,

CODE:


import java.text.SimpleDateFormat;

import java.util.*;

java.util.Date date = new java.util.Date();

//如果希望得到Y(jié)YYYMMDD的格式

SimpleDateFormat sy1=new SimpleDateFormat("yyyyMMDD");

String dateFormat=sy1.format(date);

//如果希望分開(kāi)得到年,月,日

SimpleDateFormat sy=new SimpleDateFormat("yyyy");

SimpleDateFormat sm=new SimpleDateFormat("MM");

SimpleDateFormat sd=new SimpleDateFormat("dd");

String syear=sy.format(date);

String smon=sm.format(date);

String sday=sd.format(date);


如果希望更多了解有關(guān)JAVA數(shù)據(jù)類型轉(zhuǎn)換的知識(shí),筆者建議參考JAVA類庫(kù)java.util.*下面的

Integer類

Boolean類

Character類

Float類

Double類

String類

Date類

根據(jù)自己的需要,參考不同類的各種成員方法進(jìn)行數(shù)據(jù)類型之間的轉(zhuǎn)換。

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多