第一篇:java基本語(yǔ)法總結(jié)
一、標(biāo)識(shí)符及字符集
Java語(yǔ)言規(guī)定標(biāo)識(shí)符是以字母、下劃線“_”或美元符號(hào)“$”開(kāi)始,隨后可跟數(shù)字、字母、下劃線或美元符號(hào)的字符序列。Java標(biāo)識(shí)符大小寫(xiě)敏感,沒(méi)有長(zhǎng)度限制,可以為標(biāo)識(shí)符取任意長(zhǎng)度的名字,但關(guān)鍵字不能作為標(biāo)識(shí)符。為增強(qiáng)程序可讀性,Java作如下的約定:
1.類(lèi)、接口:通常使用名詞,且每個(gè)單詞的首字母要大寫(xiě)
2.方法:通常使用動(dòng)詞,首字母小寫(xiě),其后用大寫(xiě)字母分隔每個(gè)單詞 3.常量:全部大寫(xiě),單詞之間用下劃線分隔
4.變量:通常使用名詞,首字母小寫(xiě),其后大寫(xiě)字母分隔每個(gè)單詞,避免使用$符號(hào)。
Java語(yǔ)言使用國(guó)際字符集(Unicode)。Unicode字符集定義了一套國(guó)際標(biāo)準(zhǔn)字符集。通常的ASCII碼是8位的,而Unicode字符集中的每個(gè)字符占16位,即2個(gè)字節(jié),整個(gè)字符集共包括65336個(gè)字符,兼容ASCII,排在Unicode字符集最前面的256個(gè)字符就是ASCII碼。Unicode除了可以表示256個(gè)ASCII碼外,還可以表示漢字、拉丁語(yǔ)、希臘字母、朝鮮語(yǔ)等。
Java標(biāo)識(shí)符總結(jié):1.由字母、數(shù)字、_或$組成,不能以數(shù)字開(kāi)頭;2.嚴(yán)格區(qū)分大小寫(xiě);3.長(zhǎng)度不限
二、關(guān)鍵字
Java常用關(guān)鍵字列表如下: 關(guān)鍵字
含義
用在類(lèi)的聲明中來(lái)指明一個(gè)類(lèi)是不能被Abstract
實(shí)例化的,但是可以被其它類(lèi)繼承。一個(gè)抽象類(lèi)可以使用抽象方法,抽象方法不需要實(shí)現(xiàn),但是需要在子類(lèi)中被實(shí)現(xiàn)
Boolean Break
布爾類(lèi)型,只有true或者false 停止,并跳出本層循環(huán)
8bit(位),也就是8個(gè)1/0表示,即二進(jìn)制 Byte
用來(lái)定義一組分支選擇,如果某個(gè)值和Case
switch中給出的值一樣,就會(huì)從該分支開(kāi)始執(zhí)行。
用來(lái)聲明當(dāng)try語(yǔ)句塊中發(fā)生運(yùn)行時(shí)錯(cuò)誤或非運(yùn)行時(shí)異常時(shí)運(yùn)行的一個(gè)塊。用來(lái)定義一個(gè)字符類(lèi)型 類(lèi)
在Java中,const是作為保留字以備擴(kuò)充,同樣的保留字以備擴(kuò)充還有g(shù)oto.你Const
可以用final關(guān)鍵字.final也可以用于聲明方法或類(lèi),被聲明為final的方法或類(lèi)不能被繼承。一般C里是const 對(duì)應(yīng)java用final
用來(lái)打斷當(dāng)前循環(huán)過(guò)程,從當(dāng)前循環(huán)的最Continue
后重新開(kāi)始執(zhí)行,如果后面跟有一個(gè)標(biāo)簽,則從標(biāo)簽對(duì)應(yīng)的地方開(kāi)始執(zhí)行。配合switch跟case使用,但case中沒(méi)Default
有找到匹配時(shí),則輸出或者為default后面的語(yǔ)句。
用來(lái)聲明一個(gè)循環(huán),這個(gè)循環(huán)的結(jié)束條件可以通過(guò)while關(guān)鍵字設(shè)置 用來(lái)定義一個(gè)double類(lèi)型的變量 如果if語(yǔ)句的條件不滿足就會(huì)執(zhí)行該語(yǔ)句。Catch
Char Class
Do
Double
Else
Extends
extends 繼承 類(lèi)X 通過(guò)extend 類(lèi)Y來(lái)
添加功能,或者添加變量,或者添加方法,或者覆蓋類(lèi)Y的方法。一個(gè)接口extends另外一個(gè)接口來(lái)添加方法。
False
假的
一個(gè)Java語(yǔ)言的關(guān)鍵字。你只能定義一個(gè)實(shí)體一次,以后不能改變它或繼承它。Final
更嚴(yán)格的講:一個(gè)final修飾的類(lèi)不能被子類(lèi)化,一個(gè)final修飾的方法不能被重寫(xiě),一個(gè)final修飾的變量不能改變其初始值。
用來(lái)執(zhí)行一段代碼不管在前面定義的try語(yǔ)句中是否有異?;蜻\(yùn)行時(shí)錯(cuò)誤發(fā)生。用來(lái)定義一個(gè)浮點(diǎn)數(shù)變量
用來(lái)聲明一個(gè)循環(huán)。程序員可以指定要循環(huán)的語(yǔ)句,推出條件和初始化變量。雖然為Java關(guān)鍵字,但是僅在C語(yǔ)言里面使用,Java不提供Goto語(yǔ)句
Java編程語(yǔ)言的一個(gè)關(guān)鍵字,用來(lái)生成一If
個(gè)條件測(cè)試,如果條件為真,就執(zhí)行if下的語(yǔ)句。
Java(TM)編程語(yǔ)言的一個(gè)關(guān)鍵字,在類(lèi)的Implements
聲明中是可選的,用來(lái)指明當(dāng)前類(lèi)實(shí)現(xiàn)的接口。
Java(TM)編程語(yǔ)言的一個(gè)關(guān)鍵字,在源文Import
件的開(kāi)始部分指明后面將要引用的一個(gè)類(lèi)或整個(gè)包,這樣就不必在使用的時(shí)候加Finally
Float
For
Goto
上包的名字。
一個(gè)二操作數(shù)的Java(TM)語(yǔ)言關(guān)鍵字,用Instaceof
來(lái)測(cè)試第一個(gè)參數(shù)的運(yùn)行時(shí)類(lèi)型是否和第二個(gè)參數(shù)兼容。
Java(TM)的一個(gè)關(guān)鍵字,用來(lái)定義一個(gè)整形變量
Java(TM)的一個(gè)關(guān)鍵字,用來(lái)定義一系列Interface 的方法和常量。它可以被類(lèi)實(shí)現(xiàn),通過(guò)implements關(guān)鍵字。
Long Native New
用來(lái)定義一個(gè)long類(lèi)型的變量 本地方法。
用來(lái)創(chuàng)建一個(gè)新的方法
當(dāng)String類(lèi)型沒(méi)賦值時(shí),該變量的值為Null 包的意思
用在方法或變量的聲中。它表示這個(gè)方法或變量只能被這個(gè)類(lèi)的其它元素所訪問(wèn)。在方法和變量的聲明中使用,它表示這個(gè)Protected
方法或變量只能被同一個(gè)類(lèi)中的,子類(lèi)中的或者同一個(gè)包中的類(lèi)中的元素所訪問(wèn)。在方法和變量的聲明中使用,它表示這個(gè)方法或變量能夠被其它類(lèi)中的元素訪問(wèn)。Int
Null
Package
Private
Public
Return
用來(lái)結(jié)束一個(gè)方法的執(zhí)行。它后面可以跟
一個(gè)方法聲明中要求的值。
Short
用來(lái)定義一個(gè)short類(lèi)型的變量。用來(lái)定義一個(gè)變量為類(lèi)變量。類(lèi)只維護(hù)一個(gè)類(lèi)變量的拷貝,不管該類(lèi)當(dāng)前有多少個(gè)Static
實(shí)例?!皊tatic” 同樣能夠用來(lái)定義一個(gè)方法為類(lèi)方法。類(lèi)方法通過(guò)類(lèi)名調(diào)用而不是特定的實(shí)例,并且只能操作類(lèi)變量。
Super
父類(lèi)
是一個(gè)選擇語(yǔ)句,與case,default,break一起使用。線程同步
用來(lái)代表它出現(xiàn)的類(lèi)的一個(gè)實(shí)例。this可以用來(lái)訪問(wèn)類(lèi)變量和類(lèi)方法。
允許用戶拋出一個(gè)exception對(duì)象或者任何實(shí)現(xiàn)throwable的對(duì)象
用在方法的聲明中來(lái)說(shuō)明哪些異常這個(gè)Throws
方法是不處理的,而是提交到程序的更高一層。
用來(lái)表示一個(gè)域不是該對(duì)象串行化的一部分。當(dāng)一個(gè)對(duì)象被串行化的時(shí)候,Transient
transient型變量的值不包括在串行化的表示中,然而非transient型的變量是被包括進(jìn)去的。Switch
Synchronized
This
Threadsafe
Throw True 真的
用來(lái)定義一個(gè)可能拋出異常語(yǔ)句塊。如果一個(gè)異常被拋出,一個(gè)可選的catch語(yǔ)句Try 塊會(huì)處理try語(yǔ)句塊中拋出的異常。同時(shí),一個(gè)finally語(yǔ)句塊會(huì)被執(zhí)行,無(wú)論一個(gè)異常是否被拋出。
用在Java語(yǔ)言的方法聲明中說(shuō)明這個(gè)方Void 法沒(méi)有任何返回值?!皏oid”也可以用來(lái)表示一句沒(méi)有任何功能的語(yǔ)句。
用在變量的聲明中表示這個(gè)變量是被同時(shí)運(yùn)行的幾個(gè)線程異步修改的。用來(lái)定義一段反復(fù)執(zhí)行的循環(huán)語(yǔ)句。循環(huán)的退出條件是while語(yǔ)句的一部分。volatile
while
分類(lèi)如下:
1.訪問(wèn)控制:private 私有的 protected 受保護(hù)的 public 公共的
2.類(lèi)、方法和變量修飾符abstract 聲明抽象 class 類(lèi) extends 擴(kuò)允,繼承 final 終極,不可改變的implements實(shí)現(xiàn) interface 接口 native 本地 new 新,創(chuàng)建 static 靜態(tài) strictfp 嚴(yán)格,精準(zhǔn)synchronized 線程,同步 transient 短暫 volatile 易失
3.程序控制語(yǔ)句 break 跳出循環(huán) continue 繼續(xù) return 返回 do 運(yùn)行 while 循環(huán) if 如果 else 反之 for 循 instanceof 實(shí)例 switch 開(kāi)關(guān) case 返回開(kāi)關(guān)里的結(jié)果 default 默認(rèn)
4.錯(cuò)誤處理 catch 處理異常 finally 有沒(méi)有異常都執(zhí)行 throw 拋出一個(gè)異常對(duì)象
throws 聲明一個(gè)異??赡鼙粧伋?try 捕獲異常 5.包相關(guān)import 引入 package 包
6.基本類(lèi)型 boolean 布爾型 byte 字節(jié)型 char 字符型 double 雙精度 float 浮點(diǎn) int 整型 long 長(zhǎng)整型 short 短整型 null 空 true 真 false 假 7.變量引用 super 父類(lèi),超類(lèi) this 本類(lèi) void 無(wú)返回值
注意:
1、所有的java關(guān)鍵字都是小寫(xiě)的
2、goto 和const 是保留關(guān)鍵字,在java 中沒(méi)使用
3、strictfp 和volatile 不常用; sizeof、then 不是關(guān)鍵字。4、true,false,null 不是嚴(yán)格意義上的關(guān)鍵字,而是literals
三、運(yùn)算符
Java基 本 的 運(yùn) 算 符 按功能分有 下 面 幾 類(lèi) : 1.算 術(shù) 運(yùn) 算 符(+,-,*,/,%,++,--)Java對(duì) 加 運(yùn) 算 符 進(jìn) 行 了 擴(kuò) 展 ,使 它 能 夠 進(jìn) 行 字 符 串 的連 接,如 “abc”+“de”,得到 串 “abcde”。與 C、C++不 同 ,對(duì) 取 模 運(yùn) 算 符 %來(lái) 說(shuō) ,其 操 作 數(shù) 可 以為浮點(diǎn) 數(shù) , 如37.2%10=7.2。i++與 ++i的 區(qū) 別:i++在 使 用 i之 后 ,使 i的 值 加 1,因 此 執(zhí) 行 完 i++后 ,整 個(gè) 表達(dá)式的 值 為 i,而 i的 值變 為 i+1;++i在 使 用 i之 前 ,使 i的 值 加 1,因 此 執(zhí) 行 完 ++i后 ,整 個(gè) 表達(dá)式和 i的 值 均 為 i+1。
2.關(guān) 系 運(yùn) 算 符(>,<,>=,<=,==,!=)該運(yùn)算符的特點(diǎn)是:運(yùn)算完的結(jié)果,要么是true,要么是false。Java中 ,任 何 數(shù) 據(jù) 類(lèi) 型 的 數(shù) 據(jù)(包 括 基 本 類(lèi) 型 和 組 合 類(lèi) 型)都可 以 通 過(guò) ==或!=來(lái) 比 較 是 否 相 等(這 與 C、C++不 同)。關(guān) 系 運(yùn) 算 符 用 來(lái) 比 較 兩 個(gè) 值 ,返 回 布 爾 類(lèi) 型 的值true或 false,而不是C、C++中 的 1或 0。
3.布 爾 邏 輯 運(yùn) 算 符(& | ^!&& ||)邏輯運(yùn)算符除了!外都是用于連接兩個(gè)boolean類(lèi)型表達(dá)式。&: 只有兩邊都為true結(jié)果是true。否則就是false。|:只要兩邊都為false結(jié)果是false,否則就是true ^:異或:和或有點(diǎn)不一樣。兩邊結(jié)果一樣,就為false。兩邊結(jié)果不一樣,就為true.& 和 &&區(qū)別: & :無(wú)論左邊結(jié)果是什么,右邊都參與運(yùn)算。&&:短路與,如果左邊為false,那么右邊不參數(shù)與運(yùn)算。| 和|| 區(qū)別:|:兩邊都運(yùn)算。
||:短路或,如果左邊為true,那么右邊不參與運(yùn)算。4.位 運(yùn) 算 符(>>,<<,>>>,&,|,^,~)用于操作二進(jìn)制位的運(yùn)算符,如2*8 = 2<<3。>>>(無(wú)符號(hào)右移)5.賦 值 運(yùn) 算 符(= +=-= *= /= %=)6.條 件 運(yùn) 算 符(?:)7.其 它(包 括 分 量 運(yùn) 算 符 · ,下 標(biāo) 運(yùn) 算 符 [],實(shí) 例 運(yùn) 算 符 instanc eof,內(nèi) 存 分 配運(yùn) 算 符 new,強(qiáng) 制 類(lèi) 型 轉(zhuǎn) 換 運(yùn) 算 符(類(lèi) 型), 方 法調(diào) 用 運(yùn) 算 符()等)例子:對(duì)兩個(gè)變量的數(shù)據(jù)進(jìn)行互換。不需要第三方變量。
int a = 3,b = 5;-->b = 3,a = 5;a = a + b;a = 8;b = ab;a = 5;a = a ^ b;//
b = a ^ b;//b = a ^ b ^ b = a a = a ^ b;//a = a ^ b ^ a = b;
Java 中共有 54 種運(yùn)算符,按優(yōu)先級(jí)可以分為 14 級(jí):
優(yōu)先級(jí) 操作符 含義 關(guān)聯(lián)性 用法
--1 [ ] 數(shù)組下標(biāo) 左 array_name[expr].成員選擇 左 object.member
()方法參數(shù) 左 method_name(expr_list)()實(shí)例構(gòu)造 左 class_name(expr_list)++ 后綴自增 左 lvalue++--后綴自減 左 lvalue--2 ++ 前綴自增 右 ++rvalue--前綴自減 右--lvalue ~ 按位取反 右 ~expr!邏輯非 右!expr + 一元加 右 +expr減 左 expr-expr
+ 字符串連接 左 strExpr + strExpr 6 >> 有符號(hào)右移 左 expr >> distance >>> 無(wú)符號(hào)右移 左 expr >>> distance 7 < 小于 左 expr < expr <= 小于等于 左 expr <= expr > 大于 左 expr > expr >= 大于等于 左 expr >= expr
instanceof 類(lèi)型比較 左 ref instanceof refType == 等于 左 expr == expr!= 不等于 左 expr!= expr & 整數(shù)按位與 左 integralExpr & integralExpr & 布爾與 左 booleanExpr & booleanExpr 9 ^ 整數(shù)按位異或 左 integralExpr ^ integralExpr ^ 布爾異或 左 booleanExpr ^ booleanExpr 10 | 整數(shù)按位或 左 integralExpr | integralExpr | 布爾或 左 booleanExpr | booleanExpr 11 && 邏輯與 左 booleanExpr && booleanExpr 12 || 邏輯或 左 booleanExpr || booleanExpr 13 ? : 條件運(yùn)算 右 booleanExpr ? expr : expr 14 = 賦值 右 lvalue = expr *= 乘賦值 右 lvalue *= expr /= 除賦值 右 lvalue /= expr %= 模賦值 右 lvalue %= expr += 加賦值 右 lvalue += expr += 字符串連接賦值 右 lvalue += expr-= 減賦值 右 lvalue-= expr <<= 左移賦值 右 lvalue <<= expr >>= 有符號(hào)右移賦值 右 lvalue >>= expr >>>= 無(wú)符號(hào)右移賦值 右 lvalue >>>= expr &= 整數(shù)按位與賦值 右 lvalue &= expr &= 布爾與賦值 右 lvalue &= expr |= 整數(shù)按位或賦值 右 lvalue |= expr |= 布爾或賦值 右 lvalue |= expr ^= 整數(shù)按位異或賦值 右 lvalue ^= expr ^= 布爾異或賦值 右 lvalue ^= expr
運(yùn)算符不但有優(yōu)先級(jí),還有關(guān)聯(lián)性。上表中關(guān)聯(lián)性為“左”表示該表達(dá)式從左邊開(kāi)始進(jìn)行運(yùn)算;關(guān)聯(lián)性為“右”表示該表達(dá)式從右邊開(kāi)始進(jìn)行運(yùn)算。
四、流程控制語(yǔ)句(If、switch、do while、while、for、break、continue)1.當(dāng)判斷數(shù)據(jù)范圍,獲取判斷運(yùn)算結(jié)果boolean類(lèi)型時(shí),需要使用if;當(dāng)判斷固定個(gè)數(shù)的值的時(shí)候,可以使用if,也可以使用switch。但是建議使用switch,效率相對(duì)較高。switch(變量){ case 值:要執(zhí)行的語(yǔ)句;break;…
default:要執(zhí)行的語(yǔ)句;} 工作原理:用小括號(hào)中的變量的值依次和case后面的值進(jìn)行對(duì)比,和哪個(gè)case后面的值相同了就執(zhí)行哪個(gè)case后面的語(yǔ)句,如果沒(méi)有相同的則執(zhí)行default后面的語(yǔ)句; 細(xì)節(jié):1):break是可以省略的,如果省略了就一直執(zhí)行到遇到break 為止; 2):switch 后面的小括號(hào)中的變量應(yīng)該是byte,char,short,int四種類(lèi)型中的一種; 3):default可以寫(xiě)在switch結(jié)構(gòu)中的任意位置;如果將default語(yǔ)句放在了第一行,則不管expression與case中的value是否匹配,程序會(huì)從default開(kāi)始執(zhí)行直到第一個(gè)break出現(xiàn)。
2.當(dāng)某些語(yǔ)句需要執(zhí)行很多次時(shí),就用循環(huán)結(jié)構(gòu)。
while和for可以進(jìn)行互換。區(qū)別在于:如果需要定義變量控制循環(huán)次數(shù)。建議使用for。因?yàn)閒or循環(huán)完畢,變量在內(nèi)存中釋放。
3.break:作用于switch,和循環(huán)語(yǔ)句,用于跳出,或者稱(chēng)為結(jié)束。break語(yǔ)句單獨(dú)存在時(shí),下面不要定義其他語(yǔ)句,因?yàn)閳?zhí)行不到,編譯會(huì)失敗。當(dāng)循環(huán)嵌套時(shí),break只跳出當(dāng)前所在循環(huán)。要跳出嵌套中的外部循環(huán),只要給循環(huán)起名字即可,這個(gè)名字稱(chēng)之為標(biāo)號(hào)。4.continue:只作用于循環(huán)結(jié)構(gòu),繼續(xù)循環(huán)用的。作用:結(jié)束本次循環(huán),繼續(xù)下次循環(huán)。該語(yǔ)句單獨(dú)存在時(shí),下面不可以定義語(yǔ)句,執(zhí)行不到。
第二篇:Java基礎(chǔ)語(yǔ)法總結(jié)2
Java基礎(chǔ)語(yǔ)法總結(jié)2
三、運(yùn)算符
Java基 本 的 運(yùn) 算 符 按功能分有 下 面 幾 類(lèi) : 1.算 術(shù) 運(yùn) 算 符(+,-,*,/,%,++,--)Java對(duì) 加 運(yùn) 算 符 進(jìn) 行 了 擴(kuò) 展 ,使 它 能 夠 進(jìn) 行 字 符 串 的連 接,如 “abc”+“de”,得到 串 “abcde”。與 C、C++不 同 ,對(duì) 取 模 運(yùn) 算 符 %來(lái) 說(shuō) ,其 操 作 數(shù) 可 以為浮點(diǎn) 數(shù) , 如37.2%10=7.2。i++與 ++i的 區(qū) 別:i++在 使 用 i之 后 ,使 i的 值 加 1,因 此 執(zhí) 行 完 i++后 ,整 個(gè) 表達(dá)式的 值 為 i,而 i的 值變 為 i+1;++i在 使 用 i之 前 ,使 i的 值 加 1,因 此 執(zhí) 行 完 ++i后 ,整 個(gè) 表達(dá)式和 i的 值 均 為 i+1。
2.關(guān) 系 運(yùn) 算 符(>,<,>=,<=,==,!=)該運(yùn)算符的特點(diǎn)是:運(yùn)算完的結(jié)果,要么是true,要么是false。Java中 ,任 何 數(shù) 據(jù) 類(lèi) 型 的 數(shù) 據(jù)(包 括 基 本 類(lèi) 型 和 組 合 類(lèi) 型)都可 以 通 過(guò) ==或!=來(lái) 比 較 是 否 相 等(這 與 C、C++不 同)。關(guān) 系 運(yùn) 算 符 用 來(lái) 比 較 兩 個(gè) 值 ,返 回 布 爾 類(lèi) 型 的值true或 false,而不是C、C++中 的 1或 0。
3.布 爾 邏 輯 運(yùn) 算 符(& | ^!&& ||)邏輯運(yùn)算符除了!外都是用于連接兩個(gè)boolean類(lèi)型表達(dá)式。&: 只有兩邊都為true結(jié)果是true。否則就是false。|:只要兩邊都為false結(jié)果是false,否則就是true ^:異或:和或有點(diǎn)不一樣。兩邊結(jié)果一樣,就為false。兩邊結(jié)果不一樣,就為true.& 和 &&區(qū)別: & :無(wú)論左邊結(jié)果是什么,右邊都參與運(yùn)算。&&:短路與,如果左邊為false,那么右邊不參數(shù)與運(yùn)算。| 和|| 區(qū)別:|:兩邊都運(yùn)算。
||:短路或,如果左邊為true,那么右邊不參與運(yùn)算。
4.位 運(yùn) 算 符(>>,<<,>>>,&,|,^,~)用于操作二進(jìn)制位的運(yùn)算符,如2*8 = 2<<3。>>>(無(wú)符號(hào)右移)5.賦 值 運(yùn) 算 符(= +=-= *= /= %=)6.條 件 運(yùn) 算 符(?:)7.其 它(包 括 分 量 運(yùn) 算 符 · ,下 標(biāo) 運(yùn) 算 符 [],實(shí) 例 運(yùn) 算 符 instanc eof,內(nèi) 存 分 配運(yùn) 算 符 new,強(qiáng) 制 類(lèi) 型 轉(zhuǎn) 換 運(yùn) 算 符(類(lèi) 型), 方 法調(diào) 用 運(yùn) 算 符()等)例子:對(duì)兩個(gè)變量的數(shù)據(jù)進(jìn)行互換。不需要第三方變量。int a = 3,b = 5;-->b = 3,a = 5;a = a + b;a = 8;b = ab;a = 5;a = a ^ b;//
b = a ^ b;//b = a ^ b ^ b = a a = a ^ b;//a = a ^ b ^ a = b;
Java 中共有 54 種運(yùn)算符,按優(yōu)先級(jí)可以分為 14 級(jí):
優(yōu)先級(jí) 操作符 含義 關(guān)聯(lián)性 用法
--1 [ ] 數(shù)組下標(biāo) 左 array_name[expr].成員選擇 左 object.member
()方法參數(shù) 左 method_name(expr_list)()實(shí)例構(gòu)造 左 class_name(expr_list)++ 后綴自增 左 lvalue++--后綴自減 左 lvalue--2 ++ 前綴自增 右 ++rvalue--前綴自減 右--lvalue ~ 按位取反 右 ~expr!邏輯非 右!expr + 一元加 右 +expr 減 左 expr-expr
+ 字符串連接 左 strExpr + strExpr 6 >> 有符號(hào)右移 左 expr >> distance >>> 無(wú)符號(hào)右移 左 expr >>> distance 7 < 小于 左 expr < expr <= 小于等于 左 expr <= expr > 大于 左 expr > expr >= 大于等于 左 expr >= expr
instanceof 類(lèi)型比較 左 ref instanceof refType == 等于 左 expr == expr!= 不等于 左 expr!= expr & 整數(shù)按位與 左 integralExpr & integralExpr & 布爾與 左 booleanExpr & booleanExpr 9 ^ 整數(shù)按位異或 左 integralExpr ^ integralExpr ^ 布爾異或 左 booleanExpr ^ booleanExpr 10 | 整數(shù)按位或 左 integralExpr | integralExpr | 布爾或 左 booleanExpr | booleanExpr 11 && 邏輯與 左 booleanExpr && booleanExpr 12 || 邏輯或 左 booleanExpr || booleanExpr 13 ? : 條件運(yùn)算 右 booleanExpr ? expr : expr 14 = 賦值 右 lvalue = expr *= 乘賦值 右 lvalue *= expr /= 除賦值 右 lvalue /= expr %= 模賦值 右 lvalue %= expr += 加賦值 右 lvalue += expr += 字符串連接賦值 右 lvalue += expr-= 減賦值 右 lvalue-= expr <<= 左移賦值 右 lvalue <<= expr >>= 有符號(hào)右移賦值 右 lvalue >>= expr >>>= 無(wú)符號(hào)右移賦值 右 lvalue >>>= expr &= 整數(shù)按位與賦值 右 lvalue &= expr &= 布爾與賦值 右 lvalue &= expr |= 整數(shù)按位或賦值 右 lvalue |= expr |= 布爾或賦值 右 lvalue |= expr ^= 整數(shù)按位異或賦值 右 lvalue ^= expr ^= 布爾異或賦值 右 lvalue ^= expr
運(yùn)算符不但有優(yōu)先級(jí),還有關(guān)聯(lián)性。上表中關(guān)聯(lián)性為“左”表示該表達(dá)式從左邊開(kāi)始進(jìn)行運(yùn)算;關(guān)聯(lián)性為“右”表示該表達(dá)式從右邊開(kāi)始進(jìn)行運(yùn)算。
四、流程控制語(yǔ)句(If、switch、do while、while、for、break、continue)1.當(dāng)判斷數(shù)據(jù)范圍,獲取判斷運(yùn)算結(jié)果boolean類(lèi)型時(shí),需要使用if;當(dāng)判斷固定個(gè)數(shù)的值的時(shí)候,可以使用if,也可以使用switch。但是建議使用switch,效率相對(duì)較高。switch(變量){ case 值:要執(zhí)行的語(yǔ)句;break;…
default:要執(zhí)行的語(yǔ)句;} 工作原理:用小括號(hào)中的變量的值依次和case后面的值進(jìn)行對(duì)比,和哪個(gè)case后面的值相同了就執(zhí)行哪個(gè)case后面的語(yǔ)句,如果沒(méi)有相同的則執(zhí)行default后面的語(yǔ)句; 細(xì)節(jié):1):break是可以省略的,如果省略了就一直執(zhí)行到遇到break 為止; 2):switch 后面的小括號(hào)中的變量應(yīng)該是byte,char,short,int四種類(lèi)型中的一種; 3):default可以寫(xiě)在switch結(jié)構(gòu)中的任意位置;如果將default語(yǔ)句放在了第一行,則不管expression與case中的value是否匹配,程序會(huì)從default開(kāi)始執(zhí)行直到第一個(gè)break出現(xiàn)。
2.當(dāng)某些語(yǔ)句需要執(zhí)行很多次時(shí),就用循環(huán)結(jié)構(gòu)。
while和for可以進(jìn)行互換。區(qū)別在于:如果需要定義變量控制循環(huán)次數(shù)。建議使用for。因?yàn)閒or循環(huán)完畢,變量在內(nèi)存中釋放。
3.break:作用于switch,和循環(huán)語(yǔ)句,用于跳出,或者稱(chēng)為結(jié)束。break語(yǔ)句單獨(dú)存在時(shí),下面不要定義其他語(yǔ)句,因?yàn)閳?zhí)行不到,編譯會(huì)失敗。當(dāng)循環(huán)嵌套時(shí),break只跳出當(dāng)前所在循環(huán)。要跳出嵌套中的外部循環(huán),只要給循環(huán)起名字即可,這個(gè)名字稱(chēng)之為標(biāo)號(hào)。4.continue:只作用于循環(huán)結(jié)構(gòu),繼續(xù)循環(huán)用的。作用:結(jié)束本次循環(huán),繼續(xù)下次循環(huán)。該語(yǔ)句單獨(dú)存在時(shí),下面不可以定義語(yǔ)句,執(zhí)行不到。
第三篇:JAVA四種基本排序的總結(jié)
JAVA四種基本排序,包括冒泡法,插入法,選擇法,SHELL排序法.其中選擇法是冒泡法的改進(jìn),SHELL排序法是 插入法的改進(jìn).所以從根本上來(lái)說(shuō)可以歸納為兩種不同的排序方法:即:插入法&冒泡法
一 插入法:遍歷排序集合,每到一個(gè)元素時(shí),都要將這個(gè)元素與所有它之前的元素遍歷比較一遍,讓符合排序順序的元素挨個(gè)移動(dòng)到當(dāng)前范圍內(nèi)它最應(yīng)該出現(xiàn)的位置。交換是相鄰遍歷移動(dòng),雙重循環(huán)控制實(shí)現(xiàn).這種排序法屬于地頭蛇類(lèi)型,在我的地牌上我要把所有的東西按一定的順序規(guī)整,過(guò)來(lái)一個(gè),規(guī)整一個(gè).處理代碼如下: public void sort(int[] data){ int temp;
for(int i=1;i〈data.length;i++){ for(int j=i;(j〉0)&&(data[j]〉data[j-1]);j--){
temp=date[j];data[j]=data[j-1];data[j-1]=temp;} } } 二冒泡法:比較容易,它的內(nèi)層循環(huán)保證遍歷一次后,集合中最?。ù螅┰爻霈F(xiàn)在它的正確位置,下一次就是次小元素。。該方法在集合分布的各種情況下交換移動(dòng)的次數(shù)基本不變,屬于最慢的一種排序。實(shí)現(xiàn)也是雙重循環(huán)控制。這種排序法屬于過(guò)江龍,就是要找到極端,但是過(guò)獎(jiǎng)龍也有大哥,二哥等,所以他們只能是大哥挑了二哥挑.處理代碼如下: public static int [] maopao(int[] data){ int temp;
for(int i=0;i〈data.length-1;i++){ for(int j=i+1;j〈data.length;j++〉{ if(data[i]〈data[j]〉{ temp=data[i];data[i]=data[j];data[j]=temp;} 〉 〉
return data;
三選擇法:該方法只是通過(guò)遍歷集合記錄最小(大)元素的位置,一次遍歷完后,再進(jìn)行交換位置操作,類(lèi)似冒泡,但在比較過(guò)程中,不進(jìn)行交換操作,只記錄元素位置。一次遍歷只進(jìn)行一次交換操作。這個(gè)對(duì)與交換次序比較費(fèi)時(shí)的元素比較適合。這種排序法比冒泡法要城府要深的多,我先記住極端數(shù)據(jù),待遍歷數(shù)據(jù)完了之后,我再處理,不像冒泡法那樣只要比自己極端一點(diǎn)的就要處理,選擇法只處理本身范圍內(nèi)的最極端數(shù)據(jù).public static void xuanze(int[] data){ int temp;
for(int i = 0;i 〈 data.length;i++〉 { int lowIndex = i;
for(int j = data.length-1;j)i;j--){ if(data[j])data[lowIndex]){ lowIndex = j;} } temp=data[i];
data[i]=data[lowIndex];data[lowIndex]=temp;} } 四 Shell排序:
它是對(duì)插入排序的一種改進(jìn),是考慮將集合元素按照一定的基數(shù)劃分成組去排序,讓每一組在局部范圍內(nèi)先排成基本有序,最后在進(jìn)行一次所有元素的插入排序。public void sort(int[] data){ for(int i=data.length/2;i)2;i/=2){ for(int j=0;j〈i;j++〉{ insertSort(data,j,i);} 〉
insertSort(data,0,1);〉
private void insertSort(int[] data, int start, int inc){ int temp;
for(int i=start+inc;i〈data.length;i+=inc〉{ for(int j=i;(j)=inc)&&(data[j]〈data[j-inc]〉;j-=inc〉{ temp=data[j];data[j]=data[j-inc] data[j-inc]=temp;} 〉 〉
第四篇:現(xiàn)代漢語(yǔ)語(yǔ)法基本參考書(shū)目
現(xiàn)代漢語(yǔ)語(yǔ)法及語(yǔ)法教學(xué)基本參考書(shū)目
(帶“? ”必讀)
一、現(xiàn)代漢語(yǔ)語(yǔ)法(含現(xiàn)代漢語(yǔ)教材中的語(yǔ)法部分)
? 朱德熙(1982)《語(yǔ)法講義》,北京:商務(wù)印書(shū)館。黃伯榮、廖序東主編(2007)《現(xiàn)代漢語(yǔ)》(增訂四版),北京:高等教育出版社。邵敬敏主編(2007)《現(xiàn)代漢語(yǔ)通論》(第二版),上海:上海教育出版社。
二、漢語(yǔ)作為第二語(yǔ)言教學(xué)語(yǔ)法
? 盧福波(2011)《對(duì)外漢語(yǔ)教學(xué)實(shí)用語(yǔ)法》(修訂版),北京:北京語(yǔ)言文化大學(xué)出版社。楊玉玲(2011)國(guó)際漢語(yǔ)教師語(yǔ)法教學(xué)手冊(cè),高教出版社。楊德峰(2009)《對(duì)外漢語(yǔ)教學(xué)核心語(yǔ)法》,北京:北京大學(xué)出版社。施春宏編著(2009)《作為第二語(yǔ)言的漢語(yǔ)概說(shuō)》,北京:北京大學(xué)出版社。孫德金(2002)《漢語(yǔ)語(yǔ)法教程》,北京:北京語(yǔ)言大學(xué)出版社。
三、漢語(yǔ)作為第二語(yǔ)言教學(xué)參考語(yǔ)法
? 陸慶和(2006)《實(shí)用對(duì)外漢語(yǔ)教學(xué)語(yǔ)法》,北京:北京大學(xué)出版社。施春宏編著(2010)《國(guó)際漢語(yǔ)教學(xué)語(yǔ)法教程》,北京:北京語(yǔ)言大學(xué)出版社。房玉清(1992)《實(shí)用漢語(yǔ)語(yǔ)法》,北京:北京語(yǔ)言學(xué)院出版社。李德津、程美珍(1988)《外國(guó)人實(shí)用漢語(yǔ)語(yǔ)法》,北京:華語(yǔ)教學(xué)出版社。劉月華、潘文娛、胡韡(2001)《實(shí)用現(xiàn)代漢語(yǔ)語(yǔ)法》(增訂本),北京:商務(wù)印書(shū)館。
四、漢語(yǔ)作為第二語(yǔ)言語(yǔ)法偏誤
? 周小兵(2007)外國(guó)人學(xué)漢語(yǔ)語(yǔ)法偏誤研究》,北京:北京語(yǔ)言大學(xué)出版社。肖奚強(qiáng)(2009)外國(guó)學(xué)生漢語(yǔ)句式學(xué)習(xí)難度及分級(jí)排序研究,高教出版社。彭小川(2004)《對(duì)外漢語(yǔ)教學(xué)語(yǔ)法釋疑201例》,商務(wù)印書(shū)館。
第五篇:日語(yǔ)基本語(yǔ)法—形容詞
日語(yǔ)基礎(chǔ)語(yǔ)法--形容詞
形容詞
1.1.1.詞形特征
形容詞由詞干和詞尾構(gòu)成,詞干不變化,詞尾是變化部分,普通詞尾為[い] 1.1.2.詞尾變化
詞尾變化通常稱(chēng)為“活用”,形容詞共有五種活用形 1.1.2.1.連用形
即連接活用詞的形式,形容詞有兩個(gè)連用形:[く]和[かっ]
[く] 后續(xù)否定形容詞[ない],表示否定;后續(xù)其它各類(lèi)詞(萬(wàn)能形),后續(xù)用言,后續(xù)接續(xù)助詞[て],中頓
[かっ] 后續(xù)過(guò)去完了動(dòng)詞[た],表示過(guò)去完了時(shí)態(tài)(單一形)
例: おいしい---> おいしくない(不好吃)---> おいしかった(真好吃)
すずしい---> すずしくなる(變涼爽)---> すずしかった(以前涼爽)
あつい---> あつくありません(不熱)---> あつかった(以前熱)
1.1.2.2.終止形
即終止句子的形式,終止形是不變化的形式,即原形。除終止句子外,終止形后面還可以跟某些助詞、助動(dòng)詞,給句子增添某種意義。后續(xù)助詞如[から][が],后續(xù)助動(dòng)詞如[でしょう]
例: きょうは暑いね。
今天好熱呀!
夏が暑いです。
夏天炎熱。
冬は寒いでしょう。
冬天大概很冷吧。1.1.2.3.連體形
即連接體言的形式,形容詞的連體形與原形相同,用于修飾體言,做定語(yǔ)。此外,亦可后續(xù)某些助詞,為句子增添某種意義。后續(xù)助詞如[ので][のに]
例: 暖かい春/溫暖的春天
甘いりんご/甜蘋(píng)果 1.1.2.4.假定形
即表示假定條件的形式,詞尾[い]變成[けれ],后續(xù)假定助詞[ば],表示假定條件。
例: 寒い---> さむければ/如果冷的話
甘くない---> あまくなければ/如果不甜的話 1.1.2.5.推量形
即表示推測(cè)的形式。詞尾[い]變成[かろ],后續(xù)推量助動(dòng)詞[う],表示推測(cè)
例: 涼しい---> すずしかろう/大概涼爽吧 よい---> よかろう/大概好吧
不過(guò),現(xiàn)代日語(yǔ)中,除了少數(shù)約定俗成的慣用形式中還可見(jiàn)[かろう]形式外,表示推測(cè)時(shí),已經(jīng)改用了更簡(jiǎn)便的[終止形 + でしょう(.だろう)]方式了
例: 涼しい---> すずしいでしょう/大概涼爽吧 1.1.3.形容詞的簡(jiǎn)體與敬體
在形容詞原有活用形式后加上[です],形容詞句就變?yōu)榫大w了,這里的[です]在形容詞后沒(méi)有“是”的意思,僅僅是一個(gè)敬體標(biāo)志,不參與任何活用變化。
例: きのうは暑かった。(簡(jiǎn)體)---> きのうは暑かったです。(敬體)
上海の冬は寒くない。(簡(jiǎn)體)---> 上海の冬は寒くないです。(敬體)