第二節課
標識符 關鍵字及數據類型
1.標識符: 用來表示類名,變量名,方法名,類型名,數組名,文件名的有效字符序列.
特點:java語言規定標識符由字母,下劃線,美元符號和數字組成,並且第一個字符不能是數字字符.
java語言使用unicode標準字符集其包含65536個字符,比C和C++所使用的ASCII碼多很多.
2.關鍵字:編程語言中已經被賦予特定意義的一些單詞,不能把這類詞作爲名字來用,具體的關鍵字書上列舉的很全,略.
3.數據類型
邏輯類型: boolean 用ture(真)和false(假)來賦值,沒有賦值默認情況時表示false
整數類型:
(1) int型變量,內存分配4個字節的空間,即32位的空間,所以可以表示-2^31到2^31-1的整數,例如int x=10;
(2) byte型變量,內存分配1個字節的空間,範圍從-2^7到2^7-1,例如byte x=127
(3) short型變量,內存分配2個字節的空間,範圍從-2^15到2^15-1,例如short x=1000
(4) long型變量,內存分配8個字節的空間,範圍從-2^63到2^63-1,例如long x=700000;
字符類型:
(1)常量:java使用unicode字符集,所以字符表中的每個字符都是一個字符常量,用單引號括上,例如'A','你','あ'
注意有些字符不能通過鍵盤直接輸入到字符串中或程序中,這時就需要轉意字符常量,例如:'/n'(換行),'/b'(退格),'/''(單引號)等等.
(2)變量:通過關鍵字char來定義字符變量
char型變量,內存分配2個字節的空間,因爲是字符不存在負數的概念,所以範圍從0到2^16-1(即65535),例如char name='劉',grade='A'
- 如果要查一個字符在unicode字符集裏的順序位置,必須使用int類型轉換,如(int)'A',但不可以用short型轉換(範圍只有一半);同樣道理如果想得到一個在0到65535之間的數字在unicode字符集中所對應的字符必須使用char型轉換,如(char)30000.具體含義理解如下面代碼
public class Sign_Num
{ public static void main (String args[ ])
{ char chinaWord='你',japanWord='ぁ';
int p1=36328,p2=38358;
System.out.println("漢字/'你/'在unicode表中的順序位置:"+(int)chinaWord);
System.out.println("日語/'ぁ/'在unicode表中的順序位置:"+(int)japanWord);
System.out.println("unicode表中第20328位置上的字符是:"+(char)p1);
System.out.println("unicode表中第12358位置上的字符是:"+(char)p2);
}
}
除了char以外還要稍微介紹一下String,在C或C++中,String是一個以空爲終結的字符數組,而在java中它是java.lang包中的String類來創建一個字符串變量,因此字符串變量是一個對象.String的具體介紹在後面會學習到.
浮點類型:
(1)float型 內存分配4個字節,佔32位,範圍從10^-38到10^38 和 -10^38到-10^-38
例float x=123.456f,y=2e20f; 注意float型定義的數據末尾必須有"f",爲了和double區別
(2)double型 內存分配8個字節,範圍從10^-308到10^308 和 -10^-308到-10^-308
例double x=1234567.98,y=8980.09d; 末尾可以有"d"也可以不寫
基本數據類型轉換:
類型按精度從低到高:byte short int long float double
(1)當把級別低的變量賦值給級別高的變量時,系統自動完成數據類型的轉換,例
int x=100;
float y;
y=x;
結果y的值應該是100.0
(2)當把級別高的變量賦值給級別低的變量時,必須使用顯示類型轉換運算,格式爲:(類型名)要轉換的值;例
int x=(int)23.89f;
結果x的值爲23
所以強制轉換運算可能導致精度的損失
(3)當把一個整數賦值給一個byte,short,int或long型變量時,不可以超出這些變量的取值範圍,否則必須進行類型轉換運算,例
byte a=(byte)128;
byte b=(byte)-129;//超出範圍
結果a值爲128,b值爲127
用下面的代碼來複習下:
public class Example2_2
{ public static void main (String args[ ])
{ int c=2200;
long d=8000;
float f;
double g=123456789.123456789;
c=(int)d;
f=(float)g; //導致精度的損失
System.out.print("c= "+c);
System.out.println(" d= "+d);
System.out.println("f= "+f);
System.out.println("g= "+g);
}
}
java中的數組
格式: 數組元素類型 數組名字[ ] 或
數組元素類型 [ ]數組名字 例
float boy[];
創建數組: 數組名字=new 數組元素的類型[數組元素的個數]; 例
boy=new float[2]; //意思是boy獲得了兩個用來存放float型數據的空間
注意:和C和C++不同的是java允許使用int型變量來指定數組大小,例
int size=30;
double number=new double[size];
程序代碼複習數組:
public class Example2_3
{ public static void main(String args[])
{ int a[]={100,200,300};
int b[]={10,11,12,13,14,15,16};
b=a;
b[0]=123456;
System.out.println("數組a:"+a[0]+","+a[1]+","+a[2]);
System.out.println("數組b:"+b[0]+","+b[1]+","+b[2]);
System.out.println("數組b的長度:"+b.length);
}
}
總結:本節課把編程語言中的基礎-關鍵字,數據類型等概念複習一遍,尤其是在java中的用法,爲以後在使用變量的學習中做基礎.