天天看點

黑馬程式員 java文法(一)

                         ------- android教育訓練、java教育訓練、期待與您交流! ----------

java語言基礎組成

關鍵字 運算符
辨別符 語句
注釋 函數
變量與常理 數組

1.關鍵字

黑馬程式員 java文法(一)
黑馬程式員 java文法(一)

 2.辨別符

      在程式中自定義的一些名稱。

      由26個英文字母大小寫,數字:0-9 符号:_ $ 組成

      定義合法辨別符規則:

          1,數字不可以開頭。

          2,不可以使用關鍵字。

      Java中嚴格區分大小寫。

      注意:在起名字的時,為了提高閱讀性,要盡量有意義。

  Java中的名稱規範:

      包名:多單詞組成時所有字母都小寫。

            xxxyyyzzz

      類名接口名:多單詞組成時,所有單詞的首字母大寫。

            XxxYyyZzz

      變量名和函數名:多單詞組成時,第一個單詞首字母小寫,第二個單詞開始

            每個單詞首字母大寫。

            xxxYyyZzz

      常量名:所有字母都大寫。多單詞時每個單詞用下劃線連接配接。

            XXX_YYY_ZZZ

3.注釋

        用于注解說明解釋程式的文字就是注釋。 提高了代碼的閱讀性。

   Java中的注釋格式:

        單行注釋

            格式: //注釋文字

        多行注釋

            格式:

        文檔注釋

            格式:

   對于單行和多行注釋,被注釋的文字,不會被JVM(java虛拟機)解釋執行。  

   對于文檔注釋,是java特有的注釋,其中注釋内容可以被JDK提供的工具 javadoc

   所解析,生成一套以網頁檔案形式展現的該程式的說明文檔。

/**
這是我的Hello World程式。
@author 小強
*/
class Demo
{
	/*
	這是主函數,是程式的入口
	它的出現可以保證程式的獨立運作,
	*/
	public static void main(String[] args)
	{
		//這是輸出語句用于将括号内的資料列印到控制台。
		System.out.println("Hello World");
	}
}
           

4.常理與變量

    常量表示不能改變的數值。

       Java中常量的分類:

             1,整數常量。所有整數

             2,小數常量。所有小數

             3,布爾型常量。較為特有,隻有兩個數值。true false。

             4,字元常量。将一個數字字母或者符号用單引号( ' ' )辨別。

             5,字元串常量。将一個或者多個字元用雙引号辨別。

             6,null常量。隻有一個數值就是:null.

       對于整數:java有三種表現形式。

            十進制:0-9 ,滿10進1.

            八進制:0-7 ,滿8進1. 用0開頭表示。

            十六進制:0-9,A-F,滿16進1. 用0x開頭表示。

      變量的概念:

             記憶體中的一個存儲區域

             該區域有自己的名稱(變量名)和類型(資料類型)

             該區域的資料可以在同一類型範圍内不斷變化

      使用變量注意:

             變量的作用範圍(一對{}之間有效) 

             初始化值

      定義變量的格式:

              資料類型    變量名  =  初始化值;

       Java語言是強類型語言,對于每一種資料都定義了明确的具體資料類型,

        在記憶體總配置設定了不同大小的記憶體空間。

     各種資料類型

黑馬程式員 java文法(一)

  類型轉換

    自動類型轉換(也叫隐式類型轉換) 

    強制類型轉換(也叫顯式類型轉換)

    表達式的資料類型自動提升

        所有的byte型、short型和char的值将被提升到int型。

        如果一個操作數是long型,計算結果就是long型;

        如果一個操作數是float型,計算結果就是float型;

        如果一個操作數是double型,計算結果就是double型。

   自動類型提升

       byte b = 3;

       int x = 4;

       x = x + b;//b會自動提升為int類型進行運算。

   強制類型轉換

       byte b = 3;

       b = b + 4;//報錯 

       b = (byte)b+4;//強制類型轉換,強制将b+4的結果轉換為byte類型,再指派給b。

    例子:

       byte b1=3,b2=4,b;

       b=b1+b2;   編譯失敗

       b=3+4;       編譯通過

    b=3+4 ,3和4都是常量,是以java在編譯時期會檢查該常量的和是否超出byte類型的

    範圍。如果沒有可以指派。

    b=b1+b2不可以,是因為b1和b2是變量,因為變量的值會變化,不确定具體的值,

    是以預設使用int類型進行存儲。

5.運算符

   運算符可分為:

   算術運算符

   指派運算符

   比較運算符 

   邏輯運算符

   位運算符

   三元運算符

   算術運算符

黑馬程式員 java文法(一)

   算術運算符的注意問題

        a   如果對負數取模,可以把模數負号忽略不記,如:5%-2=1。但被模數是負數就

            另當别論。 

        b  對于除号“/”,它的整數除和小數除是有差別的:整數之間做除法時,隻保留整數部分

            而舍棄小數部分。

               例如:int x=3510;x=x/1000*1000;  x的結果是?結果為3000

        c  “+”除字元串相加功能外,還能把非字元串轉換成字元串 ,

                例如:System.out.println("5+5="+5+5);//列印結果是?結果5+5=55

  指派運算符

                  符号:

                   = , +=, -=, *=, /=, %=

                  示例:

                   int a,b,c;  a=b=c =3;

                   int a = 3;   a+=5;等同運算a=a+5;

                  執行個體:比較一下兩種指派運算的差別

                   short s = 3;

                   s=s+2;

                   s+=2;   

                s=s+2//編譯失敗,因為s會被提升為int類型,運算後的結果還是int類型。

                無法指派給short類型。

               s+=2//編譯通過,因為+=運算符在給s指派時,自動完成了強轉操作。

比較運算符

黑馬程式員 java文法(一)

        注1:比較運算符的結果都是boolean型,也就是要麼是true,要麼是false。

        注2:比較運算符“==”不能誤寫成“=” 。

邏輯運算符

黑馬程式員 java文法(一)

 邏輯運算符用于連接配接布爾型表達式,在Java中不可以寫成3<x<6,應該寫成x>3 & x<6 。

    “&”和“&&”的差別:

         單&時,左邊無論真假,右邊都進行運算; 

         雙&時,如果左邊為真,右邊參與運算,如果左邊為假,那麼右邊不參與運算。

         “|”和“||”的差別同理,雙或時,左邊為真,右邊不參與運算。

          異或( ^ )與或( | )的不同之處是:當左右都為true時,結果為false。

位運算符

黑馬程式員 java文法(一)

        <<:相當于乘與2的倍數

        >>:相當于除以2的倍數

       移n位,就是對乘以或者除以2的n次幂。

黑馬程式員 java文法(一)

    技巧:二進制1就是true,0就是false

三元運算符

     格式

               (條件表達式)?表達式1:表達式2;

               如果條件為true,運算後的結果是表達式1;

               如果條件為false,運算後的結果是表達式2;

     示例:

               擷取兩個數中大數。

               int x=3,y=4,z; z = (x>y)?x:y;//z變量存儲的就是兩個數的大數。

     表達式:就是具有一定文法規則的語句。

6.語句

    介紹流程控制語句:

       判斷結構 

       選擇結構

       循環結構

     判斷結構,if語句

if語句
三種格式:
if(條件表達式)
	{
		執行語句;
	}

if(條件表達式)
	{
		執行語句;
	}
	else
	{
		執行語句;
	}
           
3.	if(條件表達式)
	{
		執行語句;
	}
	else if (條件表達式)
	{
		執行語句;
	}
	……
	else
	{
		執行語句;
	}
           

     if語句特點:

           a,每一種格式都是單條語句。

           b,第二種格式與三元運算符的差別:三元運算符運算完要有值出現。好處是:

              可以寫在其他表達式中。 

           c,條件表達式無論寫成什麼樣子,隻看最終的結構是否是true 或者 false;

   選擇結構,switch語句

switch語句
格式:
switch(表達式)
{
	case 取值1:
		執行語句;
		break;
	case 取值2:
		執行語句;
		break;
	…...
	default:
		執行語句;
		break;
}
           

       switch語句特點:

             a,switch語句選擇的類型隻有四種:byte,short,int , char。

              b,case之間與default沒有順序。先執行第一個case,沒有比對的case執

                行default。

              c,結束switch語句的兩種情況:遇到break,執行到switch語句結束。

              d,如果比對的case或者default沒有對應的break,那麼程式會繼續向下執行,

                 運作可以執行的語句,直到遇到break或者switch結尾結束。

       循環結構

           代表語句:while , do while , for

while語句格式:
while(條件表達式)
{
	執行語句;
}
           
do while語句格式:
do
{
	執行語句;
}while(條件表達式);
           

    do while特點是條件無論是否滿足,循環體至少被執行一次。

     for語句

for(初始化表達式;循環條件表達式;循環後的操作表達式)
{
	執行語句;
}
           

            a, for裡面的連個表達式運作的順序,初始化表達式隻讀一次,判斷循環條件,

               為真就執行循環體,然後再執行循環後的操作表達式,接着繼續判斷循環條件,

               重複找個過程,直到條件不滿足為止。

           b, while與for可以互換,差別在于for為了循環而定義的變量在for循環結束就是在

               記憶體中釋放。而while循環使用的變量在循環結束後還可以繼續使用。

           c, 最簡單無限循環格式:while(true) , for(;;),無限循環存在的原因是并不知道循環多少                  次,而是根據某些條件,來控制循環。

其他流程控制語句

          break(跳出),  continue(繼續)

          break語句:應用範圍:選擇結構和循環結構。

          continue語句:應用于循環結構。

  注:

       a,這兩個語句離開應用範圍,存在是沒有意義的。

       b,這個兩個語句單獨存在下面都不可以有語句,因為執行不到。

       c,continue語句是結束本次循環繼續下次循環。

       d,标号的出現,可以讓這兩個語句作用于指定的範圍。

                              ------- android教育訓練、java教育訓練、期待與您交流! ----------