中文字幕在线一区二区在线,久久久精品免费观看国产,无码日日模日日碰夜夜爽,天堂av在线最新版在线,日韩美精品无码一本二本三本,麻豆精品三级国产国语,精品无码AⅤ片,国产区在线观看视频

      java基本語法復(fù)習(xí)知識點

      時間:2024-07-21 22:40:07 JAVA認證 我要投稿
      • 相關(guān)推薦

      java基本語法復(fù)習(xí)知識點大全

        java開發(fā)除了環(huán)境的搭建之外,我們要學(xué)習(xí)的還有各種java基本語法,所以yjbys小編為大家匯總了java基本語法復(fù)習(xí)知識點,希望同學(xué)們好好學(xué)習(xí)!

      java基本語法復(fù)習(xí)知識點大全

        一:java中的語句規(guī)則:

        java每行代碼以;結(jié)尾。

        Java中的注釋有:

        (1)// 注釋一行

        以“//”開始,終止于行尾,一般作單行注釋,可放在語句的后面

        (2)/*……*/ 一行或多行注釋

        以“/*”開始,最后以“*/”結(jié)束,中間可寫多行。

        (3)/**……*/

        以“/**”開始,最后以“*/”結(jié)束,中間可寫多行。這種注釋主要是為支持JDK 工具javadoc而采用的。

        Java中的合法標(biāo)示符要符合一下規(guī)則:

        1)要以大小寫字母或者美元符號或者下劃線開頭,不能以數(shù)字開頭

        2)標(biāo)示符命名不能用關(guān)鍵字,關(guān)鍵字是java內(nèi)部所用到的標(biāo)示符,為了避免混淆,所以不能用。

        3)類,變量,方法名命名盡量有一定規(guī)則,不要隨便命名,雖然系統(tǒng)不會報錯,但是為了項目開發(fā)后期的維護,所以盡量起比較有意義的名字,并且命名要符合一定的規(guī)則,如駝峰規(guī)則。

        二:java基本數(shù)據(jù)類型

        Java數(shù)據(jù)類型被分為:基本數(shù)據(jù)類型和引用數(shù)據(jù)類型。

        Java中有8中基本數(shù)據(jù)類型:

        類型 位長/b 默認值 取值范圍

        布爾型 (boolean) 1 false true false

        字節(jié)型(byte ) 8 0 -128~127

        字符型 (char) 16 ‘\u0000’ ‘\u0000’~’\uffff’即0~65535

        短整型(short) 16 0 -32768~32767

        整型(int) 32 0 -231~231-1

        長整型(long) 64 0 -263~263-1

        單精度(float) 32 0.0 +-1.4E-45 或+-3.4028235E+38

        雙精度(double) 64 0.0 +-4.9E-324 或+-1.797693134862315E+308

        注:String類型不是基本數(shù)據(jù)類型,它被定義為類,屬于引用數(shù)據(jù)類型。,由于字符串是常用的數(shù)據(jù)類型。Java提供了對String類型特殊操作,直接引用,例如:String s="hello world";

        三:引用類型

        引用類型是一個對象類型的,它的值是指向內(nèi)存空間的引用,就是地址,所指向的內(nèi)存中保存著變量所表示的一個值或一組值。很好理解吧,因為一個對象,比如說一個人,不可能是個數(shù)字也不可能是個字符啊,所以要想找它的話只能找它的地址了。

        接下來看看基本類型和引用類型變量的不同處理吧。基本類型自然是簡單,聲明是自然系統(tǒng)就給它空間了。例如,

        int baijq;

        baijq=250; //聲明變量baijq的同時,系統(tǒng)給baijq分配了空間。

        引用類型就不是了,只給變量分配了引用空間,數(shù)據(jù)空間沒有分配,因為誰都不知道數(shù)據(jù)是什么啊,整數(shù),字符?我們看一個錯誤的例子:

        MyDate today;

        today.day = 4; //發(fā)生錯誤,因為today對象的數(shù)據(jù)空間未分配。

        那我們怎么給它賦值啊?引用類型變量在聲明后必須通過實例化開辟數(shù)據(jù)空間,才能對變量所指向的對象進行訪問。舉個例子:

        MyDate today; //將變量分配一個保存引用的空間

        today = new MyDate(); //這句話是2步,首先執(zhí)行new MyDate(),給today變量開辟數(shù)據(jù)空間,然后再執(zhí)行賦值操作。

        四:定義變/常量和變量的初始化

        Java定義變量結(jié)構(gòu):類型 變量名,這里的變量名要符合標(biāo)示符規(guī)則

        1.變量的聲明

        格式:類型 變量名[,變量名]=初值,… ;

        賦值:[類型] 變量名=值

        如:int a=5 , b=6 , c , d ;

        說明:

        (1)變量名必須在作用域中是唯一的,不同作用域中才允許相同名字的變量出現(xiàn);

        (2)只要在同一代碼塊沒有同名的變量名,可以在程序中任何地方定義變量,一個代碼塊就是兩個相對的“{ }”之間部分。

        2.變量的使用范圍

        每個變量的使用范圍只在定義它的代碼塊中,包括這個代碼塊中包含的代碼塊。

        在類開始處聲明的變量是成員變量,作用范圍在整個類;

        在方法和塊中聲明的變量是局部變量,作用范圍到它的“}”;

        3.變量類型的轉(zhuǎn)換

        Java 可以將低精度的數(shù)字賦值給高精度的數(shù)字型變量,反之則需要強制類型轉(zhuǎn)換。

        強制轉(zhuǎn)換格式:(數(shù)據(jù)類型)數(shù)據(jù)表達式

        字節(jié)型 短整型 字符型 整型 長整型 單精度實型 雙精度實型

        轉(zhuǎn)化規(guī)律:由低到高

        變量與存儲器有著直接關(guān)系,定義一個變量就是要編譯器分配所需要的內(nèi)存空間,分配多少空間,這就是根據(jù)我們所定義的變量類型所決定的。變量名實際上是代表所分配空間的內(nèi)存首地址

        4. 常量

        Java中的常量值是用文字串表示的,它區(qū)分為不同的類型,如整型常量123,實型常1.23,

        字符常量‘a’,布爾常量true、false以及字符串常量“This is a constant string”。

        Java 的常量用final 說明,約定常量名一般全部使用大寫字母,如果是多個單詞組合在一起的,單詞之間用下劃線連接,常量在程序執(zhí)行時不可更改。

        如:final int i=1;

        i=i+1; //錯,i 是final(常量),不可更改值

        例如:final double IP = 3.14159 D

        說明:默認類型為64 位double 雙精度類型(D 或d),數(shù)字后面加F 或f 則是32 位float 單

        精度(實數(shù))類型

        五:運算符

        1、賦值運算符

        賦值運算符用于把一個數(shù)賦予一個變量。賦值運算符兩邊的類型不一致時,那么如果左側(cè)的數(shù)據(jù)類型的級別高,則右邊的數(shù)據(jù)將轉(zhuǎn)換成左邊的數(shù)據(jù)類型在賦予左邊的變量,否則需要強制類型轉(zhuǎn)換。

        賦值運算符包括= 、+=、-=、*=、%=、/=等。

        2、算術(shù)運算符

        算數(shù)運算符用于對整型數(shù)或者浮點數(shù)進行運算,java語言中的算術(shù)運算符包括二元運算符和一元運算符。所謂的幾元運算符即參加運算的操作數(shù)的個數(shù)。

        1) 二元運算符

        Java的二元運算符有+(加)、-(減)、*(乘)、/(除)、%(取余數(shù))。

        2) 一元運算符

        Java的一元運算符有++(自加)、--(自減)

        3、關(guān)系運算符

        關(guān)系運算符用來比較兩個值,返回布爾類型的值true或false。

        等于 不等于 小于 小于等于 大于等于 大于

        == != < <= >= >

        4、條件運算符

        條件運算符的作用是根據(jù)表達式的真假決定變量的值。

        1> 格式:條件表達式 ? 表達式2 :表達式3

        2> 功能:條件表達式為true,取“表達式2”值,為false,取“表達式3”的值

        例: int a=0x10 , b=010 , max ;

        max=a>b ? a : b ;

        System.out.println(max) ; // 輸出16

        5、 邏輯運算符

        運算符 結(jié)果

        ~ 按位非(NOT)(一元運算)

        & 按位與(AND)

        | 按位或(OR)

        ^ 按位異或(XOR)

        >> 右移

        >>> 右移,左邊空出的位以0填充 ;無符號右移

        << 左移

        &= 按位與賦值

        |= 按位或賦值

        ^= 按位異或賦值

        >>= 右移賦值

        >>>= 右移賦值,左邊空出的位以0填充 ;無符號左移

        <<= 左移賦值

        按位非(NOT)

        按位非也叫做補,一元運算符NOT“~”是對其運算數(shù)的每一位取反。例如,數(shù)字42,它的二進制代碼為: 00101010

        經(jīng)過按位非運算成為 11010101

        六:流程控制語句

        ·分支語句

        1.簡單的if.....else語句

        If(條件){

        如果條件為真、、、、

        }

        Else{

        如果條件為假、、、、、、

        }

        2、只有if的語句:

        If(條件){

        如果條件為真,執(zhí)行。。。如果為假,不執(zhí)行

        }

        3、switch語句是多分枝語句,基本語法:

        Switch(expr){

        Case value1:

        Statements;

        Break;

        ........

        Case valueN:

        Statements;

        Break;

        Default:

        Statements;

        Break;

        }

        注:

        expr必須是與int類型兼容的類型,即為byte,short,char和int類型中的其中一種

        Case valueN:中valueN也必須是int類型兼容的類型,并且必須是常量

        各個case子句的valueN表達式的值不同

        Switch語句中只能有一個default子句。

        ·循環(huán)語句

        1.while語句

        2.do......while語句(此處省略三百字)

        3.for語句

        基本格式:for(初始化;循環(huán)條件;迭代部分)

        功能:

        (1)第一次進入for 循環(huán)時,對循環(huán)控制變量賦初值;

        (2) 根據(jù)判斷條件檢查是否要繼續(xù)執(zhí)行循環(huán)。為真執(zhí)行循環(huán)體內(nèi)語句塊,為假則結(jié)束循環(huán);

        (3)執(zhí)行完循環(huán)體內(nèi)語句后,系統(tǒng)根據(jù)“循環(huán)控制變量增減方式”改變控制變量值,再回

        (3) 到步驟(2)根據(jù)判斷條件檢查是否要繼續(xù)執(zhí)行循環(huán)。

        4.流程跳轉(zhuǎn)語句:break,continue和return語句用來控制流程的跳轉(zhuǎn)

        1)break:從switch語句,循環(huán)語句或標(biāo)號標(biāo)識的代碼塊中退出

        2)continue:跳出本次循環(huán),執(zhí)行下次循環(huán),或執(zhí)行標(biāo)號標(biāo)識的循環(huán)體;

        3)return:退出本方法,跳到上層調(diào)用方法。

        4)Break語句和continue語句可以與標(biāo)號聯(lián)合使用。標(biāo)號用來標(biāo)識程序中的語句,標(biāo)號的名字可以是任意的合法標(biāo)識符。

        帶有標(biāo)號的循環(huán)體:

        Loop:switch(expr){

        }

        }

        七:字符串

        字符串的幾種用法:

        拼接 直接用“+”把兩個字符串拼接起來

        例如:String firstName = “li”;

        String secondName = “ming”;

        String fullName = firstName+secondName;

        檢測字符串是否相等 檢測兩個字符串內(nèi)容是否相等時使用“equals”;比較兩個字符串的引用是否相等時用“==”

        得到字符串的長度 字符串變量名.length();

        String,StringBuffer,StringBuild區(qū)別

        String 字符串常量

        StringBuffer 字符串變量(線程安全)

        StringBuilder 字符串變量(非線程安全)

        簡要的說, String 類型和 StringBuffer 類型的主要性能區(qū)別其實在于 String 是不可變的對象, 因此在每次對 String 類型進行改變的時候其實都等同于生成了一個新的 String 對象,然后將指針指向新的 String 對象,所以經(jīng)常改變內(nèi)容的字符串最好不要用 String ,因為每次生成對象都會對系統(tǒng)性能產(chǎn)生影響,特別當(dāng)內(nèi)存中無引用對象多了以后, JVM 的 GC 就會開始工作,那速度是一定會相當(dāng)慢的。

        而如果是使用 StringBuffer 類則結(jié)果就不一樣了,每次結(jié)果都會對 StringBuffer 對象本身進行操作,而不是生成新的對象,再改變對象引用。所以在一般情況下我們推薦使用 StringBuffer ,特別是字符串對象經(jīng)常改變的情況下。而在某些特別情況下, String 對象的字符串拼接其實是被 JVM 解釋成了 StringBuffer 對象的拼接,所以這些時候 String 對象的速度并不會比 StringBuffer 對象慢,而特別是以下的字符串對象生成中, String 效率是遠要比 StringBuffer 快的:

        String S1 = “This is only a” + “ simple” + “ test”;

        StringBuffer Sb = new StringBuilder(“This is only a”).append(“ simple”).append(“ test”);

        你會很驚訝的發(fā)現(xiàn),生成 String S1 對象的速度簡直太快了,而這個時候 StringBuffer 居然速度上根本一點都不占優(yōu)勢。其實這是 JVM 的一個把戲,在 JVM 眼里,這個

        String S1 = “This is only a” + “ simple” + “test”; 其實就是:

        String S1 = “This is only a simple test”; 所以當(dāng)然不需要太多的時間了。但大家這里要注意的是,如果你的字符串是來自另外的 String 對象的話,速度就沒那么快了,譬如:

        String S2 = “This is only a”;

        String S3 = “ simple”;

        String S4 = “ test”;

        String S1 = S2 +S3 + S4;

        這時候 JVM 會規(guī)規(guī)矩矩的按照原來的方式去做

        在大部分情況下 StringBuffer > String

        StringBuffer

        Java.lang.StringBuffer線程安全的可變字符序列。一個類似于 String 的字符串緩沖區(qū),但不能修改。雖然在任意時間點上它都包含某種特定的字符序列,但通過某些方法調(diào)用可以改變該序列的長度和內(nèi)容。

        可將字符串緩沖區(qū)安全地用于多個線程。可以在必要時對這些方法進行同步,因此任意特定實例上的所有操作就好像是以串行順序發(fā)生的,該順序與所涉及的每個線程進行的方法調(diào)用順序一致。

        StringBuffer 上的主要操作是 append 和 insert 方法,可重載這些方法,以接受任意類型的數(shù)據(jù)。每個方法都能有效地將給定的數(shù)據(jù)轉(zhuǎn)換成字符串,然后將該字符串的字符追加或插入到字符串緩沖區(qū)中。 append 方法始終將這些字符添加到緩沖區(qū)的末端;而 insert 方法則在指定的點添加字符。

        例如,如果 z 引用一個當(dāng)前內(nèi)容是“start”的字符串緩沖區(qū)對象,則此方法調(diào)用 z.append("le") 會使字符串緩沖區(qū)包含“startle”,而 z.insert(4, "le") 將更改字符串緩沖區(qū),使之包含“starlet”。

        在大部分情況下 StringBuilder > StringBufferjava.lang.StringBuilder

        java.lang.StringBuilder 一個可變的字符序列是5.0新增的。此類提供一個與 StringBuffer 兼容的 API,但不保證同步。該類被設(shè)計用作 StringBuffer 的一個簡易替換,用在字符串緩沖區(qū)被單個線程使用的時候(這種情況很普遍)。如果可能,建議優(yōu)先采用該類,因為在大多數(shù)實現(xiàn)中,它比 StringBuffer 要快。兩者的方法基本相同。

        八、數(shù)組

        數(shù)組是有序數(shù)據(jù)的集合,數(shù)組中的每個元素具有相同的數(shù)組名,根據(jù)數(shù)組名和下標(biāo)來唯一確定數(shù)組中的元素。使用時要先聲明后創(chuàng)建

        1、一維數(shù)組

        1) 一維數(shù)組的聲明

        格式: 數(shù)據(jù)類型 數(shù)組名[ ] 或 數(shù)據(jù)類型 [ ]數(shù)組名

        例: int a[] ; String s[] ; char []c ;

        說明:定義數(shù)組,并不為數(shù)據(jù)元素分配內(nèi)存,因此“[ ]”中不用指出數(shù)組中元素個數(shù)。

        2 )一維數(shù)組的創(chuàng)建與賦值

        創(chuàng)建數(shù)組并不是定義數(shù)組,而是在數(shù)組定義后,為數(shù)組分配存儲空間,同時對數(shù)組元素進行初始化

        (1)用運算符new 分配內(nèi)存再賦值

        格式:數(shù)組名=new 數(shù)據(jù)類型[size]

        例:int a[] ;

        a=new int[3] ; // 產(chǎn)生a[0] , a[1] , a[2] 三個元素

        a[0]=8 ; a[1]=8 ; a[2]=8 ;

        3)直接賦初值并定義數(shù)組的大小

        例:int i[]={4,5,010,7,3,2,9} ;

        String names[]={“張三”,”李四”,”王五”,”宋七”} ;

        4)測試數(shù)組長度(補充)

        格式:數(shù)組名.length

        char c[]={‘a’,’b’,’c’,’北’,’京’} ;

        System.out.print(c.length) ; // 輸出5

        2、多維數(shù)組

        以二維數(shù)組為例

        例:int d[][] ; // 定義一個二維數(shù)組

        d=new int[3][4] ; // 分配3 行4 列數(shù)組內(nèi)存

        int a[][]=new int[2][] ;

        a[0]=new int[3] ; // 第二維第一個元素指向3 個整型數(shù)

        a[1]=new int[5] ; // 第二維第一個元素指向5 個整型數(shù)

        注意:Java 可以第二維不等長

        int i[][]={{0},{1,4,5},{75,6},{8,50,4,7}} ; //定義和賦初值在一起

        下面數(shù)組定義正吳的判斷

        int a[][]=new int[10,10] //錯

        int a[10][10]=new int[][] //錯

        int a[][]=new int[10][10] //對

        int []a[]=new int[10][10] //對

        int [][]a=new int[10][10] //對

        注意:java中二維數(shù)組分配空間是第二維可以為空,但是第一維必須分配內(nèi)存。

        最后以一個經(jīng)典的helloworld代碼結(jié)束本章的總結(jié)

        public class HelloWorldApp{

        public static void main(String[] args){

        System.out.println(“hello world!”);

        }

        }

      【java基本語法復(fù)習(xí)知識點】相關(guān)文章:

      英語基本語法易錯知識點08-19

      小升初英語語法強調(diào)句的復(fù)習(xí)知識點02-12

      Java基本編程技巧07-13

      日語基本語法句型06-20

      PETS基本語法解析08-12

      Java代碼的基本知識10-26

      Java知識點歸納08-16

      德語基本語法知識講解07-14

      雅思的基本語法概念—詞性10-16

      主站蜘蛛池模板: 亚洲电影一区二区| 龙游县| 国产成人自拍小视频在线| 于都县| 国产精品无码久久AⅤ人妖| 亚洲中文字幕播放视频| 超清无码AV丝袜片在线观看| 亚洲性69影视| 国产高清在线91福利| 日本女优一区二区在线免费观看| 郓城县| 91久久国产综合精品| 久久精品国产一区二区涩涩| 国产精品后入内射视频| 亚洲av网一区天堂福利| 香格里拉县| 亚洲欧美成人久久综合中文网| 亚洲美女国产精品久久久久久久久 | 最新国产成人综合在线观看| 91精品日本久久久久久牛牛 | 狠狠亚洲婷婷综合久久久| 清水河县| 昭平县| 桃园市| 林周县| 广饶县| 平遥县| 亚洲欧美国产成人综合不卡| 额尔古纳市| 东兰县| 泗洪县| 国产亚洲av日韩av| 美腿丝袜一区二区三区| 新巴尔虎左旗| 精品无吗国产一区二区三区av| 砀山县| 欧美久久中文字幕| 日本理论片一区二区三区| 国产视频网站一区二区三区| 亚洲av日韩av一卡二卡| 日本女优中文字幕看片|