1. 程式人生 > >JAVA——基本資料型別與陣列(1)

JAVA——基本資料型別與陣列(1)

主要內容:1.識別符號與關鍵字;2.基本資料型別;3:型別轉換運算;4:輸入,輸出資料;5陣列

一:識別符號與關鍵字

1.識別符號(只是一個名字):作用:用來標識類名,變數名,方法名,型別名,陣列名,以及檔名的有效字元序列。

2.命名規則:①不能是數字字元開頭;

                     ②由字母,下劃線,美元符,和數字組成,長度不受限制。

                     ③大小寫敏感:Hello與hello不是相同的識別符號。

                     ④不能是JAVA的關鍵字。(關鍵字:就是具有特定用途或被賦予特定意義的一些單詞)

                     ⑤識別符號不能是true,false,null(儘管true,false和null不是JAVA的關鍵字)

   eg.以下都是識別符號:HappyNewYear_ava,TigerYear_2010,$98apple,hello,Hello。

注:JAVA採用UNICODE字符集,即國際字符集。

二:資料型別:(常量是有資料型別的,變數必須宣告資料型別)

1.常量和變數:①定義:在程式中存在大量的資料來代表程式的狀態;常量:資料在程式執行中值不能發生改變;變數:資料在程式執行中值會發生變化。

        ②JAVA是一種強型別語言,每個變數都必須宣告其型別。

        ③JAVA變數是程式中最基本的儲存單元,其要素包括變數名、變數型別、和作用域。

        ④變數在使用前必須對其申明,只有在變數聲明後,才能為其分配相應長度的儲存單元格,宣告格式為:.type varName[=value][{varName[=value]}]

注:1.每個變數都有型別,型別可以是基本型別,也可以是引用型別。

        2變數名必須是合法的識別符號。

         ⑤變數宣告舉例:double salary;boolean done;int age;

 

2.資料型別:❶基本資料型別:⑴數值型:①整數型別(byte、short、int、long);②浮點型別:(float、double)

                                                 ⑵字元型別:char

                                                 ⑶邏輯型別(布林型別);boolean

                      ❷ 應用資料型別:⑴類:class

                                                   ⑵介面:interface

                                                   ⑶陣列

3.整形資料型別:整形常量:十進位制數;如99、-500、0;八進位制數:要求以0開頭;十六進位制數:要求以ox開頭。

                            整形變數:

型別 佔用儲存間 表數範圍
byte 1位元組(8位) —128~127
short 2位元組(16位) -32768~32767
int 4位元組(32位) -2147483648~2147483647
long 8位元組(64位) 負二的六十三次方到二的六十三次方

        注:整型常量預設為int,宣告long型常量可在後加“L”

4.浮點資料型別

①浮點型別常量:十進位制數形式:3.14;314.0;0.314

                             科學計數形式:314e2;314E2;314E-2

②浮點型變數:float型別:單精度型別,尾數可以精確到7位有效數字,在很多情況下,float型別的精度很難滿足需求。

                         double型別:雙精度型別,精度是float型別的兩倍,絕大部分應用程式都採用double型別。

型別 佔用空間 表數範圍
float 4位元組(32位) -3.403E38~3.403E38
double 8位元組(64位) -1.798E308~1.798E308

        注:浮點型預設為double型別,要變為float型別,須在後面加"F"

5.字元型別:常量:‘A’,‘b’,‘?’,‘悅’,‘8’,等,應用單引號(需用英文輸入法輸入)

                    變數:使用關鍵字char來表明char型變數。

                   eg:char ch:='A';    home='家'; handsome=‘酷’;
 

型別 佔用儲存間 表數範圍
char 2位元組(16位) 0~65535

      注:①最高位不是符號位,沒有負數的char。

             ②char X='a';等於char x=97;(記憶體中X儲存的是97位,97是字元a在UNICODE表中的排序位置)

             ③有些字元(如回車符)不能通過鍵盤輸入到字串或程式中,這時就需要使用轉義字元常量:eg:\n.(換行),\b(退格),\t(水平製表),\'(單引號),\\(反斜線)等。例如:char ch1='\n',ch2='\',ch3='\\';

             ④字串“我喜歡使用雙引號\” "中含有雙引號字元,但是如果寫成“我喜歡使用雙引號” ”,就是一個非法字串。

             ⑤在JAVA中,可以用字元在UNICODE表中排序位置的十六進位制轉義(需要使用U做字首 )來表示該字元,其一般格式為'\u*****';eg:'\u004'表示字元A,'\u006'表示字元a。

6.布林資料型別:(一位,不是一個位元組)

①boolean型別有兩個值:true和false

②boolean型別用來判斷邏輯條件,一般用於程式流程控制。

實踐:if(is==true&&done==false)

 

三:型別轉換運算涉及範圍:把一種基本資料型別變數的值賦給另一種基本型別變數時。

                                 精度從低到高的資料排列:byte、short、char、int、long、float、double

轉換規則:1.當把級別低的變數的值賦給級別高的變數時,系統自動完成資料型別轉換:例如:

                                 int X=50;

                                 float y;

                                  y=X;

              如果輸出y的值,結果將  是50。

             2.當把級別高的變數的值賦給級別低的變數時,必須使用型別轉換運算。格式為:(型別名)要轉換的值。例如:

                                int x=(int)34.89;

                                long y=(long)56.98F;

                                int z=(int)1999L;

如果輸出x y z的值,結果是34、56、1999。

         3.當把一個int型常量賦值給一個byte、short、char型變數時,不可超出這些變數的取值範圍,否則必須進行型別轉換運算。例如:常量128屬於int型別常量,超出byte變數的取值範圍,如果賦值給byte型變數,必須進行byte型別轉換運算(將導致精度型別的損失),例如:

                                   byte a=(byte)128;

                                   byte b=(byte)(-129);

               那麼a、b輸出的結果是-128和127。

      4.將double型常量賦給float型變數時必須進行型別轉換運算,例如:

                            float x=11.2F; 

                        或float x=(float)11.2;

 

     總結:1.右側:所有變數先轉換為位元組數最多的資料型別,再計算。

                2.兩側:左側寬度>右側寬度(自動轉換)

                               左側寬度<右側寬度 (強制轉換)

四:輸入、輸出資料

輸出資料型別System.out,println()或System.out.println()可輸出串值、表示式的值,二者的區別是前者輸出資料後換行,後者不換行。允許使用並置符+將變數、表示式或一個常數值與一個字串並置一起輸出,eg:

      System.out,println(m+"個數的和為"=sum);

      System.out.println(":"+1223+"你好");