2.1 Java語言標(biāo)識符
標(biāo)識符是一個(gè)唯一標(biāo)識一個(gè)變量,方法和類的名字。
(1) Unicode編碼字符集
l Java語言使用Unicode字符集,共包含65535個(gè)字符。
l 每個(gè)字符用2個(gè)字節(jié),即16位來表示。
l Unicode只用在Java平臺內(nèi)部。
(2) 標(biāo)識符的命名
l 以字母、下劃線或美元符“$”開始的,并包含這些字符和數(shù)字的字符序列。
l 標(biāo)識符是大小寫相關(guān)的,且可以任意長,但長度要合適。
l 關(guān)鍵字不能作標(biāo)識符。
l 避免用下劃線或美元符“$”開頭。否則,在向程序中導(dǎo)入C語言程序庫時(shí)可能會造成名字沖突和混亂。
l 為使標(biāo)識符具有較好的可讀性,應(yīng)遵守一定的命名規(guī)范:
標(biāo)識符類型 常規(guī) 示例
類 每個(gè)單詞的首字母都大寫 Mammal,SeaMammal
函數(shù) 第一個(gè)字母小寫,其它單詞的首字母大寫 getAge
變量 第一個(gè)字母小寫,其它單詞的首字母大寫 brainSize
常量 所有字母大小,單詞之間使用下劃線分開 MAX_HEIGHT
2.2 Java語言關(guān)鍵字
關(guān)鍵字是預(yù)定義的標(biāo)識符,它對于Java語言編譯器有特殊意義,不能重新定義。
(1) Java語言的關(guān)鍵字
abstract boolean break byte case catch char class continue default do double else extends false final finally float for if implements import instanceof int interface long native new null package private protected public return short static super switch synchronized this throws transient true try void volatile while
(2) 分類
l 數(shù)據(jù)聲明關(guān)鍵字(boolean,float,int)
l 循環(huán)關(guān)鍵字(continue,while,for)
l 條件關(guān)鍵字(if,else,switch)
l 異常關(guān)鍵字(try,throws,catch)
l 結(jié)構(gòu)關(guān)鍵字(class,extends,implements)
l 修飾符和訪問關(guān)鍵字(private,public,transient)
l 其它關(guān)鍵字(true,null,super)
2.3 注釋語句
(1)Java語言中的三種注釋方式:
¹ // 用于單行注釋。注釋從∥開始,終止于行尾。
º /*…*/ 用于多行注釋。這種注釋不能互相嵌套。
» /**…*/ 是Java語言所特有的doc注釋。通常用在創(chuàng)建web頁面的HTML文件中。主要是為支持JDK工具Javadoc而采用的。
(2)程序段
2.4 數(shù)據(jù)類型
(1)整型數(shù)據(jù)))) byte、short、int、long
l 整型常量
①十進(jìn)制整數(shù)。例如123,-456,0
②八進(jìn)制整數(shù),以0開頭。
③十六進(jìn)制整數(shù),以0x或0X開頭。
例如:0123表示十進(jìn)制數(shù)83,-011表示十進(jìn)制數(shù)-9,0x123表示十進(jìn)制數(shù)291,-0X12表示十進(jìn)制數(shù)-18。
對于long型值,則要在數(shù)字后加L或l,如123L表示一個(gè)長整數(shù)。
l 整型變量
數(shù)據(jù)長度 整數(shù)類型 表示范圍
8位 byte -27——27-1
16位 short -215——215-1
32位 int -231——231-1
64位 long -263——263-1
整型變量的聲明,例如:byte b;//聲明變量b為byte型
(2)浮點(diǎn)型(實(shí)型)數(shù)據(jù)))) float、double
double比float具有更高的精度和更大表示范圍,常常使用。
l 實(shí)型常量
①十進(jìn)制數(shù)形式:由數(shù)字和小數(shù)點(diǎn)組成,且必須有小數(shù)點(diǎn)。如0.123,.123,123.,123.0
②科學(xué)計(jì)數(shù)法形式:如:123e3或123E3,其中e或E之前必須有數(shù),且e或E后面的指數(shù)必須為整數(shù)。
l 實(shí)型變量
數(shù)據(jù)長度 整數(shù)類型 表示范圍
32 float 3.4e-038~3.4e+038
64 double 1.7e-308~1.7e+308
(3)字符型數(shù)據(jù))) char、String
l 字符常量
用單引號括起來的一個(gè)字符。Java也提供轉(zhuǎn)義字符,以\開頭,將其后的字符轉(zhuǎn)變?yōu)榱硗獾暮x。
Java語言中的字符型數(shù)據(jù)是16位無符號型數(shù)據(jù),它表示Unicode集,而不僅僅是ASCII集。
Java語言中的轉(zhuǎn)義字符:
\' \\ \r \n \f \t \b \ddd \uxxxx
例如:\071是ASCII碼為八進(jìn)制數(shù)71(十進(jìn)制數(shù)57)的字符。
\u0041是Unicode碼為十六進(jìn)制數(shù)41(十進(jìn)制數(shù)65)的字符。
l 字符型變量
類型為char,在機(jī)器中占16位,其范圍為0~65535。
與C++不同,Java語言中的字符型數(shù)據(jù)不能用作整數(shù)。如:
Int three=3;
char one='1';
char four =(char)(three+one); //four='4'
l 字符串常量
用雙引號(“ ”)括起來的一串字符。Java語言中的字符串常量是作為String類的一個(gè)對象來處理,而不是一個(gè)數(shù)據(jù)。
(4)布爾型數(shù)據(jù)
l 布爾型數(shù)據(jù)只有兩個(gè)值,true和false,且它們不對應(yīng)于任何整數(shù)值。在流程控制中常用到它。
l 沒有初始化的布爾型變量自動(dòng)設(shè)定為false。
常量和變量
l 與C、C++不同,Java語言中不能通過#define命令把一個(gè)標(biāo)識符定義為常量,而是用關(guān)鍵字final來實(shí)現(xiàn),如:
final double PI=3.14159。
l Java語言中的變量必須遵循“先定義,后使用”的原則,即變量必須先聲名,再使用。
l Java語言程序中常常需要對一些變量預(yù)先設(shè)置初值。Java語言規(guī)定,可以在定義變量的同時(shí)對變量進(jìn)行初始化。
l 除了基本的數(shù)據(jù)類型外,Java語言變量的數(shù)據(jù)類型也可以是一個(gè)內(nèi)置或用戶自定義的類,還可以是一個(gè)數(shù)組。
l 一些Java語言數(shù)據(jù)類型的示例:
float x; //float是一個(gè)基本數(shù)據(jù)類型
Float x; //Float是一個(gè)內(nèi)置類
Marquee x; //Marquee是一個(gè)用戶自定義的類
String[] x; //String[]是一個(gè)String數(shù)組
例2.1
public class SimpleTypes {
public static void main(String args[]) {
byte b=0x55;
short s=0x55ff;
int i=1000000;
long l=0xfffL;
char c='c';
float f=0.23F;
double d=0.7E-3;
boolean bool=true;
System.out.println("b="+b);
System.out.println("s="+s);
System.out.println("i="+i);
System.out.println("l="+l);
System.out.println("c="+c);
System.out.println("f="+f);
System.out.println("d="+d);
System.out.println("bool="+bool);
}
}
編譯并運(yùn)行該程序,輸出結(jié)果為:
C>java SimpleTypes
b=85 s=22015 i=1000000 l=4095 c=c f=0.23 d=0.0007 bool=true
2.5 各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算
(1)自動(dòng)類型轉(zhuǎn)換
l 整型、實(shí)型、字符型數(shù)據(jù)可以混合運(yùn)算。
l 運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型,然后進(jìn)行運(yùn)算。轉(zhuǎn)換從低級到高級,轉(zhuǎn)換規(guī)則如下:
(byte或short) op int→int
(byte或short或int) op long→long
(byte或short或int或long) op float→float
(byte或short或int或long或float) op double→double
char op int→int
例2.2
public class Promotion {
public static void main(String args[]) {
byte b=10;
char c='a';
int i=90;
long l=555L;
float f=3.5f;
double d=1.234;
float f1=f*b; //float*byte——>float
int i1=c+i; //char+int——>int
long l1=l+i1; //long+int——>long
double d1=f1/i1-d; //float/int——>float
//float-double——>double
}
}
(2)強(qiáng)制類型轉(zhuǎn)換
高級數(shù)據(jù)要轉(zhuǎn)換成低級數(shù)據(jù),需用到強(qiáng)制類型轉(zhuǎn)換,如:
int i;
byte b=(byte)i; //把int型變量i強(qiáng)制轉(zhuǎn)換為byte型
int k;
float y=5.5; k=(int) y ;
標(biāo)識符是一個(gè)唯一標(biāo)識一個(gè)變量,方法和類的名字。
(1) Unicode編碼字符集
l Java語言使用Unicode字符集,共包含65535個(gè)字符。
l 每個(gè)字符用2個(gè)字節(jié),即16位來表示。
l Unicode只用在Java平臺內(nèi)部。
(2) 標(biāo)識符的命名
l 以字母、下劃線或美元符“$”開始的,并包含這些字符和數(shù)字的字符序列。
l 標(biāo)識符是大小寫相關(guān)的,且可以任意長,但長度要合適。
l 關(guān)鍵字不能作標(biāo)識符。
l 避免用下劃線或美元符“$”開頭。否則,在向程序中導(dǎo)入C語言程序庫時(shí)可能會造成名字沖突和混亂。
l 為使標(biāo)識符具有較好的可讀性,應(yīng)遵守一定的命名規(guī)范:
標(biāo)識符類型 常規(guī) 示例
類 每個(gè)單詞的首字母都大寫 Mammal,SeaMammal
函數(shù) 第一個(gè)字母小寫,其它單詞的首字母大寫 getAge
變量 第一個(gè)字母小寫,其它單詞的首字母大寫 brainSize
常量 所有字母大小,單詞之間使用下劃線分開 MAX_HEIGHT
2.2 Java語言關(guān)鍵字
關(guān)鍵字是預(yù)定義的標(biāo)識符,它對于Java語言編譯器有特殊意義,不能重新定義。
(1) Java語言的關(guān)鍵字
abstract boolean break byte case catch char class continue default do double else extends false final finally float for if implements import instanceof int interface long native new null package private protected public return short static super switch synchronized this throws transient true try void volatile while
(2) 分類
l 數(shù)據(jù)聲明關(guān)鍵字(boolean,float,int)
l 循環(huán)關(guān)鍵字(continue,while,for)
l 條件關(guān)鍵字(if,else,switch)
l 異常關(guān)鍵字(try,throws,catch)
l 結(jié)構(gòu)關(guān)鍵字(class,extends,implements)
l 修飾符和訪問關(guān)鍵字(private,public,transient)
l 其它關(guān)鍵字(true,null,super)
2.3 注釋語句
(1)Java語言中的三種注釋方式:
¹ // 用于單行注釋。注釋從∥開始,終止于行尾。
º /*…*/ 用于多行注釋。這種注釋不能互相嵌套。
» /**…*/ 是Java語言所特有的doc注釋。通常用在創(chuàng)建web頁面的HTML文件中。主要是為支持JDK工具Javadoc而采用的。
(2)程序段
2.4 數(shù)據(jù)類型
(1)整型數(shù)據(jù)))) byte、short、int、long
l 整型常量
①十進(jìn)制整數(shù)。例如123,-456,0
②八進(jìn)制整數(shù),以0開頭。
③十六進(jìn)制整數(shù),以0x或0X開頭。
例如:0123表示十進(jìn)制數(shù)83,-011表示十進(jìn)制數(shù)-9,0x123表示十進(jìn)制數(shù)291,-0X12表示十進(jìn)制數(shù)-18。
對于long型值,則要在數(shù)字后加L或l,如123L表示一個(gè)長整數(shù)。
l 整型變量
數(shù)據(jù)長度 整數(shù)類型 表示范圍
8位 byte -27——27-1
16位 short -215——215-1
32位 int -231——231-1
64位 long -263——263-1
整型變量的聲明,例如:byte b;//聲明變量b為byte型
(2)浮點(diǎn)型(實(shí)型)數(shù)據(jù)))) float、double
double比float具有更高的精度和更大表示范圍,常常使用。
l 實(shí)型常量
①十進(jìn)制數(shù)形式:由數(shù)字和小數(shù)點(diǎn)組成,且必須有小數(shù)點(diǎn)。如0.123,.123,123.,123.0
②科學(xué)計(jì)數(shù)法形式:如:123e3或123E3,其中e或E之前必須有數(shù),且e或E后面的指數(shù)必須為整數(shù)。
l 實(shí)型變量
數(shù)據(jù)長度 整數(shù)類型 表示范圍
32 float 3.4e-038~3.4e+038
64 double 1.7e-308~1.7e+308
(3)字符型數(shù)據(jù))) char、String
l 字符常量
用單引號括起來的一個(gè)字符。Java也提供轉(zhuǎn)義字符,以\開頭,將其后的字符轉(zhuǎn)變?yōu)榱硗獾暮x。
Java語言中的字符型數(shù)據(jù)是16位無符號型數(shù)據(jù),它表示Unicode集,而不僅僅是ASCII集。
Java語言中的轉(zhuǎn)義字符:
\' \\ \r \n \f \t \b \ddd \uxxxx
例如:\071是ASCII碼為八進(jìn)制數(shù)71(十進(jìn)制數(shù)57)的字符。
\u0041是Unicode碼為十六進(jìn)制數(shù)41(十進(jìn)制數(shù)65)的字符。
l 字符型變量
類型為char,在機(jī)器中占16位,其范圍為0~65535。
與C++不同,Java語言中的字符型數(shù)據(jù)不能用作整數(shù)。如:
Int three=3;
char one='1';
char four =(char)(three+one); //four='4'
l 字符串常量
用雙引號(“ ”)括起來的一串字符。Java語言中的字符串常量是作為String類的一個(gè)對象來處理,而不是一個(gè)數(shù)據(jù)。
(4)布爾型數(shù)據(jù)
l 布爾型數(shù)據(jù)只有兩個(gè)值,true和false,且它們不對應(yīng)于任何整數(shù)值。在流程控制中常用到它。
l 沒有初始化的布爾型變量自動(dòng)設(shè)定為false。
常量和變量
l 與C、C++不同,Java語言中不能通過#define命令把一個(gè)標(biāo)識符定義為常量,而是用關(guān)鍵字final來實(shí)現(xiàn),如:
final double PI=3.14159。
l Java語言中的變量必須遵循“先定義,后使用”的原則,即變量必須先聲名,再使用。
l Java語言程序中常常需要對一些變量預(yù)先設(shè)置初值。Java語言規(guī)定,可以在定義變量的同時(shí)對變量進(jìn)行初始化。
l 除了基本的數(shù)據(jù)類型外,Java語言變量的數(shù)據(jù)類型也可以是一個(gè)內(nèi)置或用戶自定義的類,還可以是一個(gè)數(shù)組。
l 一些Java語言數(shù)據(jù)類型的示例:
float x; //float是一個(gè)基本數(shù)據(jù)類型
Float x; //Float是一個(gè)內(nèi)置類
Marquee x; //Marquee是一個(gè)用戶自定義的類
String[] x; //String[]是一個(gè)String數(shù)組
例2.1
public class SimpleTypes {
public static void main(String args[]) {
byte b=0x55;
short s=0x55ff;
int i=1000000;
long l=0xfffL;
char c='c';
float f=0.23F;
double d=0.7E-3;
boolean bool=true;
System.out.println("b="+b);
System.out.println("s="+s);
System.out.println("i="+i);
System.out.println("l="+l);
System.out.println("c="+c);
System.out.println("f="+f);
System.out.println("d="+d);
System.out.println("bool="+bool);
}
}
編譯并運(yùn)行該程序,輸出結(jié)果為:
C>java SimpleTypes
b=85 s=22015 i=1000000 l=4095 c=c f=0.23 d=0.0007 bool=true
2.5 各類數(shù)值型數(shù)據(jù)間的混合運(yùn)算
(1)自動(dòng)類型轉(zhuǎn)換
l 整型、實(shí)型、字符型數(shù)據(jù)可以混合運(yùn)算。
l 運(yùn)算中,不同類型的數(shù)據(jù)先轉(zhuǎn)化為同一類型,然后進(jìn)行運(yùn)算。轉(zhuǎn)換從低級到高級,轉(zhuǎn)換規(guī)則如下:
(byte或short) op int→int
(byte或short或int) op long→long
(byte或short或int或long) op float→float
(byte或short或int或long或float) op double→double
char op int→int
例2.2
public class Promotion {
public static void main(String args[]) {
byte b=10;
char c='a';
int i=90;
long l=555L;
float f=3.5f;
double d=1.234;
float f1=f*b; //float*byte——>float
int i1=c+i; //char+int——>int
long l1=l+i1; //long+int——>long
double d1=f1/i1-d; //float/int——>float
//float-double——>double
}
}
(2)強(qiáng)制類型轉(zhuǎn)換
高級數(shù)據(jù)要轉(zhuǎn)換成低級數(shù)據(jù),需用到強(qiáng)制類型轉(zhuǎn)換,如:
int i;
byte b=(byte)i; //把int型變量i強(qiáng)制轉(zhuǎn)換為byte型
int k;
float y=5.5; k=(int) y ;