標籤:java基礎文法 變數與常量 資料類型 運算子 資料類型轉換
Java基礎文法(變數、常量、資料類型、運算子與資料類型轉換)
1、變數
Java中,使用者可以通過指定資料類型和標識符來聲明變數,其基本文法為:
DataType identifier;
或
DataType identifier = value;
其中,DataType是變數類型,如int/string/char/double/boolean等;identifier是變數名稱,即標識符;value就是聲明變數的值。
註:
a、標識符由數字0-9、大小寫字母、底線、貨幣符號、人民幣符號以及所有在十六進位0xc0前的ASCII碼組成;
b、類或結構中的變數,若沒有顯示地初始化,則預設初始值為0;方法中的變數必須顯示地初始化,否則出錯。
變數按照範圍的不同可以分為:類變數、局部變數、方法參數變數、異常處理參數變數。
範例程式碼如下:
/******************************************************************************** * "類變數"的使用方法範例程式碼*/class ClassVariable {int price=100;//定義類變數priceString name;//定義類變數nameint num;//定義類變數num}public class Grammar {public static void main(String[] args) {ClassVariable c = new ClassVariable();System.out.println("price="+c.price);System.out.println("name="+c.name);System.out.println("num="+c.num);}}//////////////////////////////////////* * "局部變數"的使用方法範例程式碼*/ public class Grammar { public static void main(String[] args) {int a=7;if (5>3) {int s=3;System.out.println("s="+s);System.out.println("a="+a);}//System.out.println("s="+s);System.out.println("a="+a);} } //////////////////////////////////////* * "方法參數變數"的使用方法範例程式碼*/public class Grammar { public static void testFun(int s) {System.out.println("s="+s);}public static void main(String[] args) {testFun(100);} } //////////////////////////////////////* * "異常處理參數變數"的使用方法範例程式碼*/public class Grammar {public static void test() {try{System.out.println("Hello! Exception!");}catch (Exception e){//異常處理塊,參數為Exception類型e.printStackTrace();}}public static void main(String [] args) {test();}}
2、常量
在C/C++中,要以const關鍵字定義一個常量,而在JAVA中const不是關鍵字符,而是一個保留字元,它使用final關鍵字來定義一個常量,其文法如下:
final dataType constantName;
其中,final是定義常量的關鍵字,dataType是指明常量的資料類型,constantName是常量的名稱。
註:
a、在定義常量時需要對其進行初始化;
b、final不僅可以用來修飾基礎資料型別 (Elementary Data Type)的常量,還可以用來修飾對象的引用或者方法。
c、在JAVA語言中,為了與變數區別,常量一般都採用大寫字元。
範例程式碼如下:
/******************************************************************************** * "常量"的使用方法範例程式碼*/public class Grammar {public static void main(String [] args) {final double PI=3.1415926;int r=10;double c=2*PI*r;System.out.println("圓的周長="+c);//PI=10;}}
3、資料類型
JAVA語言的資料類型主要分為兩大類:基礎資料型別 (Elementary Data Type)(位元組型byte、字元型char、布爾型boolean、單精確度浮點型float、雙精確度浮點型double、整型int、短整型short、長整型long)和引用資料類型(數組、類class、介面interface)。
具體如:
註:
a、所有的基礎資料型別 (Elementary Data Type)的大小都已經明確規定好,在各種不同的平台上都保持不變,這一特點有助於提高JAVA程式的移植性;
b、引用資料類型是由使用者自訂的,用於限制其他資料的類型,JAVA語言中不支援C++中的指標類型、結構類型、等位型別和枚舉類型;
c、對於浮點型資料來說,預設是double,若想被看做float,則需要在資料後面加上f或F;
d、Java語言中的字元類型使用兩個位元組的Unicode編碼錶示,字元通常用十六進位表示,範圍從\u0000到\uFFFF,即0到65535。
範例程式碼如下:
/******************************************************************************** * "整數類型"的使用方法範例程式碼*/public class Grammar {public static void main(String [] args) {byte a=10;short b=20;int c=30;long d=40;long sum=a+b+c+d;System.out.println("10+20+30+40="+sum);}}/* * "浮點類型"的使用方法範例程式碼*/public class Grammar {public static void main(String [] args) {double x=10.23;int a=2;float sum=(float)x*a;System.out.println("sum="+sum);}}/* * "布爾類型"的使用方法範例程式碼*/public class Grammar {public static void main(String [] args) {boolean a=true;System.out.println("a="+a);}}/* * "字元類型"的使用方法範例程式碼*/public class Grammar {public static void main(String [] args) {char a='A';char b='B';System.out.println("a+b="+(a+b));}}
4、運算子
運算子包括算術運算子、比較子、邏輯運算子、賦值運算子、條件運算子、自增自減運算子、位元運算符,還要考慮到運算子的優先順序別。
註:
a、自增自減運算子,例如i++和++i,其規則是誰在前先算誰;
b、在位元運算符中,按位異或的運算子是^,這一點要特別注意;
範例程式碼如下:
/******************************************************************************** * "算術運算子"的使用方法範例程式碼*/import java.util.Scanner;//代碼輸入Scanner後,系統會自動加入這段代碼public class Grammar {public static void main(String [] args) {Scanner input= new Scanner(System.in);//系統輸入System.out.println("請輸入第一個數:");int num1=input.nextInt();System.out.println("請輸入第二個數:");int num2=input.nextInt();float add=num1+num2;float sub=num1-num2;float multi=num1*num2;int div=num1/num2;float rem=num1%num2;System.out.println("add="+add+", sub="+sub+", multi="+multi+", div="+div+", rem="+rem);}}/* * "優先順序"的使用方法範例程式碼*/public class Grammar {public static void main(String [] args) {int a=10;int b=5;int c=12;int result=a+b-(a++)*(b--)%c;System.out.println("result="+result);}}
5、資料類型轉換
資料類型轉換分為隱式轉換(自動類型轉換)和顯式轉換(強制類型轉換)兩種。
自動類型轉換的實現需要同時滿足兩個條件:一是兩種資料類型彼此相容,第二個是目標類型的取值範圍要大於來源資料類型,即低級資料類型轉換為進階類型資料。
轉換規則如下:
(1)、數值型資料的轉換:byte->short->int->long->float->double;
(2)、字元型轉換為整型:char->int。
以上資料類型的轉換遵循從左至右的轉換順序,最終轉換成運算式中表示範圍最大的變數的資料類型。
顯示轉換:當兩種資料類型不相容或類型的取值小於源類型時,自動轉換無法進行,這時就需要進行強制類型轉換。
6、執行個體示範——把整數轉換為位元
參考代碼如下:
/******************************************************************************** * "實戰——把整數轉換為二進位"——難度係數:★★★*/public class Grammar {//第一步:定義一個類static String ConvertIntToBinary(int n)//第二步:定義一個方法{String binary="";//儲存二進位字串int i=n;//聲明i變數,將參數n的值賦予它int m=0;//聲明初始設定變數mwhile (i>1){i=n/2;m=n%2;binary =Integer.toString(m)+binary;//添加到binary字串中n=i;}if (i>0) binary="1"+binary;return binary;}public static void main(String [] args) {System.out.println("14轉換為二進位為:"+ConvertIntToBinary(14));System.out.println("15轉換為二進位為:"+ConvertIntToBinary(15));}}
著作權聲明:本文為博主原創文章,未經博主允許不得轉載。
JAVA學習(三):Java基礎文法(變數、常量、資料類型、運算子與資料類型轉換)