第五章:Java基礎(chǔ)知識(一)

Java基礎(chǔ)知識

Eclipse使用

1. Eclipse下載

  • 官網(wǎng)下載地址:https://www.eclipse.org
  • 進入官網(wǎng)點擊“Download”按鈕,如圖1;
圖1.Eclipse官網(wǎng)
  • 點擊“Download Packages”按鈕,如圖2;
圖2.Eclipse下載
  • 選擇Eclipse IDE for Enterprise Java Developers,點擊對應(yīng)系統(tǒng),如圖3;
圖3.Eclipse下載
  • 點擊“Download”按鈕,選擇國內(nèi)鏡像文件,下載速度會快些,如圖4;
圖4.Eclipse下載
  • 點擊“click here”下載壓縮包到本地,如圖5;


    圖5.Eclipse下載

2. Eclipse安裝

  • 將壓縮包加壓到安裝目錄下,路徑最好不包括中文,雙擊eclipse.exe文件,啟動軟件,如圖6;
圖6.Eclipse安裝
  • 配置代碼倉庫,不建議選擇C盤,勾選不再詢問,也可不勾選,點擊“Launch”按鈕,啟動軟件,如圖7;
圖7.Eclipse安裝

3. Eclipse使用

  • File--》 new --》Other...--》 Java project,如圖8;
圖8.Eclipse使用
  • 輸入項目名(英文全部小寫),選擇jre(與安裝jre版本統(tǒng)一),點擊“Finish”,如圖9;
圖9.Eclipse使用
  • 修改編譯器版本,改為與安裝jre版本相同,Window--》Preferences--》Compiler,如圖10;
圖10.Eclipse使用
  • 項目創(chuàng)建完成,如圖11;
圖11.clipse使用
  • 在“src”下創(chuàng)建一個包,右擊“src”--》 new --》Package,輸入包名(命名規(guī)則見下面標識符知識點),如圖12;
圖12.Eclipse使用
  • 在包下創(chuàng)建Java類,右擊包名--》 new --》Class,輸入類名(命名規(guī)則見下面標識符知識點),勾選“public static void main(String[] args)”默認生成主方法,如圖13;
圖13.Eclipse使用
  • 運行代碼,在主方法中書寫代碼,點擊debug或run,運行代碼,輸出結(jié)果,如圖14;
圖14.Eclipse使用

關(guān)鍵字

被java語言賦予了特殊含義的標識符,如class,public,static等,JAVA目前共有53個關(guān)鍵字,如圖15;

圖15.Java關(guān)鍵字

1. 關(guān)鍵字特征

  • 都是完整的單詞;
  • 全部由小寫字母組成;
  • 嚴格區(qū)分大小寫;

2. 保留字

  • 以后有可能用的到,現(xiàn)在先占用;

標識符

給類、方法、變量等命名時使用的字符序列。

1. 組成

  • 大小寫英文字母、數(shù)字、下劃線和$;

2. 注意事項

  • 不能以數(shù)字開頭,一般以英文字母開頭;
  • 不能是系統(tǒng)的關(guān)鍵字,會報錯或其他未知錯誤;
  • 嚴格區(qū)分大小寫;

3. 標識符命名規(guī)范

  • 包:存放和管理Java文件或類的工具,字符全部小寫,公司網(wǎng)址反過來書寫;
  • 類:大駝峰命名法,首字母大寫,如果多個單詞組成每個單詞首字母大寫;
  • 方法:小駝峰命名法,一個單詞全部小寫,多個單詞第一個單詞首字母小寫,其他單詞首字母大寫;
  • 變量:小駝峰命名法,同方法;
  • 常量:一般單詞中的字符全部大寫,多個單詞用下劃線連接;
  • 項目名:最好用英文,所有單詞全部用小寫;

常量

在程序運行過程中,值不會發(fā)生變化的量.

1. 種類

  • 字面值常量
    • 字符常量:單引號內(nèi)包括的內(nèi)容,只能是單個數(shù)字,單個字母或者單個字符,如'a';
    • 字符串常量:雙引號內(nèi)包括的內(nèi)容,特點是雙引號內(nèi),如"afa";
    • 整數(shù)常量: 所有整數(shù),如2;
    • 小數(shù)常量:所有小數(shù),如2.2;
    • 布爾常量:只有兩個值,true(正確的),false(錯誤的),單詞不能拼寫錯誤;
    • 空常量:null
  • 自定義常量:根據(jù)自己的需求,人為創(chuàng)建一些不變的量,使用final修飾;
    • 接口中定義常量格式:String MY_NAME = "liwei";
    • 類中定義常量格式:public final static String MY_NAME = "liwei";

變量

在程序運行過程中,其值在一定范圍內(nèi)可以發(fā)生改變的量,變量的本質(zhì)是內(nèi)存中的一個標記。

1. 定義格式

//方式1:數(shù)據(jù)類型 變量名 = 變量值;
String name = "李偉";
//方式2:數(shù)據(jù)類型 變量名;變量名 = 變量值;
String name;
name = "李偉";
//方式3:同時定義多個同種類型的變量,以逗號隔開;
String name,gender;
name = "李偉";
gender = "男";

2. 種類

  • 局部變量:定義在方法內(nèi)部的變量;
  • 成員變量:類的成員,定義在類中方法外;

3. 注意事項

  • 在同一個方法作用域中不能同時定義兩個相同名字的變量,即使數(shù)據(jù)類型不同,但是可以另外賦值;

數(shù)據(jù)類型

意義:每種數(shù)據(jù)在內(nèi)存中占用的大小可能不一樣;為了更好的利用存儲空間和管理、使用這些數(shù)據(jù),我們給每一種數(shù)據(jù)定義了類型和大小。

1. 分類

  • 基本數(shù)據(jù)類型;
  • 引用數(shù)據(jù)類型;

2. 基本數(shù)據(jù)類型

圖16.八大基礎(chǔ)數(shù)據(jù)類型

3. 注意

  • 基本數(shù)據(jù)類型的整數(shù)默認都是int類型;
  • 賦值時不能超出聲明數(shù)據(jù)類型的范圍,超出會報錯;
  • 可以通過強制轉(zhuǎn)換的方式把超出范圍的值賦給某個變量,但會產(chǎn)生數(shù)據(jù)精度損失;
  • 在定義long類型數(shù)據(jù)時,后面的整數(shù)后追加一個“L”(大小寫均可);
  • 基本數(shù)據(jù)類型的小數(shù)默認都是double類型,如果使用float類型需在數(shù)值后追加“F”或“f”;
  • char類型的變量只能存放一個字符,除了單引號“'”自己;

4. 數(shù)據(jù)類型轉(zhuǎn)換

  • 向上轉(zhuǎn):范圍小的數(shù)據(jù)向范圍大的數(shù)據(jù)轉(zhuǎn)換,自動轉(zhuǎn)換,不會損失精度;
  • 向下轉(zhuǎn):范圍大的數(shù)據(jù)向范圍小的數(shù)據(jù)轉(zhuǎn)換,強制轉(zhuǎn)換,有可能發(fā)生精度損失;

算術(shù)運算符

對常量和變量進行操作的符號。

1. 分類

  • +:表示數(shù)值相加,Java中還表示正數(shù)、字符串連接;
  • -:表示數(shù)值相減;
  • *:表示數(shù)值相乘;
  • /:表示數(shù)值相除;
  • %:表示取余,正負數(shù)由左邊的數(shù)值決定;
  • ++:表示自增,對原來的數(shù)據(jù)進行+1;
  • --:表示自減,對原來的數(shù)值進行-1:
public class Operator {
    public static void main(String[] args) {
        int a = 1;
        int b = 2;
        //加
        System.out.println(a+b);
        //減
        System.out.println(a-b);
        //乘
        System.out.println(a*b);
        //除
        System.out.println(a/b);
        //摩以
        System.out.println(a%b);
        //自增
        System.out.println(a++);
        System.out.println(++b);
        //自減
        System.out.println(a--);
        System.out.println(--b);
    }
}
圖17.算術(shù)運算符

2. 注意

  • ++i表示先運算i自身,再賦值,--i也是;
  • i++表示先賦值,后運算自身,i--也是;

賦值運算符

將數(shù)值傳遞給一個變量。

1. 分類

  • =:將值傳遞給左邊;
  • +=:將左右兩邊的值相加,再將結(jié)果傳遞給左邊;
  • -=:將左右兩邊的值相減,再將結(jié)果傳遞給左邊;
  • *=:將左右兩邊的值相乘,再將結(jié)果傳遞給左邊;
  • /=:將左右兩邊的值相除,再將結(jié)果傳遞給左邊;
  • %=:將左右兩邊的值取余,再將結(jié)果傳遞給左邊;
public static void main(String[] args) {
        int a = 10;
        System.out.println(a);
        //加等于
        a += 1;
        System.out.println(a);
        //減等于
        a -= 2;
        System.out.println(a);
        //乘等于
        a *= 2;
        System.out.println(a);
        //除等于
        a /= 2;
        System.out.println(a);
        //摩等于
        a %= 2;
        System.out.println(a);
    }
圖18.賦值運算符

關(guān)系運算符

又稱比較運算符,用來比較運算符兩邊值的關(guān)系,結(jié)果只能是boolean值。

1. 分類

  • ==:判斷左右兩邊是否相等;
  • !=:判斷左右兩邊是否不相等;
  • '>':判斷左邊是否大于右邊;
  • '>=':判斷左邊是否大于等于右邊;
  • <:判斷左邊是否小于右邊;
  • <=:判斷左邊是否小于等于右邊;
  • instanceof:判斷兩邊的類型是否相同;
public static void main(String[] args) {
        //等等于
        System.out.println(1 == 1);
        //不等于
        System.out.println(1 != 1);
        //大于
        System.out.println(1 > 1);
        //大于等于
        System.out.println(1 >= 1);
        //小于
        System.out.println(1 < 1);
        //小于等于
        System.out.println(1 <= 1);
        //instanceof
        System.out.println(null instanceof String);
    }
圖19.比較運算符

2. instanceof

Java 的保留關(guān)鍵字,左邊是對象,右邊是類,作用是測試它左邊的對象是否是它右邊的類的實例,當(dāng)對象是右邊類或子類所創(chuàng)建對象時,返回true;否則,返回false。

  • 左邊的對象實例不能是基礎(chǔ)數(shù)據(jù)類型;
  • 左邊的對象實例和右邊的類需在同一個繼承樹上;
  • null用instanceof跟任何類型比較時都是false;

邏輯運算符

邏輯運算符關(guān)聯(lián)兩個boolean結(jié)果, 結(jié)果是一個boolean值。

1. 分類

  • &:并,兩邊同為true才為true;
  • |:或,一邊為true即為true;
  • ^:異或,兩邊相同為false,不同為true;
  • !:非;
  • &&:短路與,只要左邊為false就停止,不檢測右邊,結(jié)果為false,左邊為true再檢測右邊,右邊為true結(jié)果為true,右邊為false結(jié)果為false;
  • ||:短路或,只要左邊為true就停止,不檢測右邊,結(jié)果為true,左邊為false再檢測右邊,右邊為true結(jié)果為true,右邊為false結(jié)果為false;
public static void main(String[] args) {
        //并
        System.out.println(true&true);
        System.out.println(true&false);
        System.out.println(false&true);
        System.out.println(false&false);
        //或
        System.out.println(true|true);
        System.out.println(true|false);
        System.out.println(false|true);
        System.out.println(false|false);
        //異或
        System.out.println(true^true);
        System.out.println(true^false);
        System.out.println(false^true);
        System.out.println(false^false);
        //非
        System.out.println(!true);
        System.out.println(!false);
        //短路與
        System.out.println(true&&true);
        System.out.println(true&&false);
        System.out.println(false&&true);
        System.out.println(false&&false);
        //短路或
        System.out.println(true||true);
        System.out.println(true||false);
        System.out.println(false||true);
        System.out.println(false||false);
    }
圖20.邏輯運算符

位運算符

對數(shù)值進行二進制的位運算。

1. 分類

  • &:有0則為0;
  • |:有1則為1;
  • ^:相同為0,不同為1;
  • ~:按位取反,正數(shù)取反,為取負后減一,負數(shù)取反,為取正后減一;
  • '<<':有符號左移,左邊位待處理數(shù)值,右邊位移動位數(shù),在低位補0;
  • '>>':有符號右移,同上,如果值為正,則在高位補0,如果值為負,則在高位補1;
  • '>>>':無符號右移,同上,無論值的正負,都在高位補0;
public static void main(String[] args) {
         int d = 10; //二進制:1010
         int e = 5;  //二進制:101
         //&
         System.out.println(d&e);
         //|
         System.out.println(d|e);
         //^
         System.out.println(d^e);
         //~
         System.out.println(~e);
         //<<
         System.out.println(d<<1);
         //>>
         System.out.println(d>>1);
         //>>>
         System.out.println(d>>>1);
    }
圖21.位運算符

三元運算符

定義:由三個元素參與運算,并返回一個結(jié)果的表達式;

1. 結(jié)構(gòu)

  • 數(shù)據(jù)類型 變量名 = 變量1 關(guān)系運算符 變量2 ? 返回true的結(jié)果 : 返回false的結(jié)果;例如:String ret = age >= 18 ? "可以瀏覽此網(wǎng)頁" : "我還小,再長幾年再過來"

2. 注意

  • ?號前的內(nèi)容必須返回一個boolean類型的值;
  • ?號后的第一個內(nèi)容是返回結(jié)果為true的時候表達式的結(jié)果;
  • :號后面的內(nèi)容是返回結(jié)果為false時表達式的結(jié)果;
  • 表達式的返回值的數(shù)據(jù)類型必須和:前后的類型一致;
package com.javastudy.operator;

public class TernaryExpression {

    public static void main(String[] args) {
        // TODO Auto-generated method stub
        int age = 18;
        String ret = age >= 18 ? "可以瀏覽此網(wǎng)頁" : "我還小,再長幾年再過來";
        System.out.println(ret);
    }
}

圖22.三元運算符

運算符優(yōu)先順序

圖23.運算符優(yōu)先順序
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容