java變量與運算符_第1頁
java變量與運算符_第2頁
java變量與運算符_第3頁
java變量與運算符_第4頁
java變量與運算符_第5頁
已閱讀5頁,還剩3頁未讀 繼續免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

java變量與運算符.關1鍵字與保留字關鍵字的定義和特點定義:被Java語言賦予了特殊含義,用做專門用途的字符串(單詞)特點:關鍵字中所有字母都為小寫*官方地址:保留字v:現有Java版本尚未使用,但以后版本可能會作為關鍵字使用。自己命名標識符時要避免使用這些保留字goto、const標識符標.識符:Java對各種變量、方法和類等要素命名時使用的字符序列稱為標識符技巧:凡是自己可以起名字的地方都叫標識符。定.義合法標識符規則:?由26個英文字母大小寫,0-9,—或$組成數字不可以開頭。不可以使用關鍵字和保留字,但能包含關鍵字和保留字。Java中嚴格區分大小寫,長度無限制。標識符不能包含空格。中a勺名稱命名規范:包名:多單詞組成時所有字母都小寫:xxxyyyzzzxxxYyyZzz類名、接口名:多單詞組成時,所有單詞的首字母大寫:XxxYyyZzzxxxYyyZzz變量名、方法名:多單詞組成時,第一個單詞首字母小寫,第二個單詞開始每個單詞首字母大寫:?常量名:所有字母都大寫。多單詞時每個單詞用下劃線連接:XXX_YYY_ZZZ變量1變.量的概念:內存中的一個存儲區域該區域的數據可以在同一類型范圍內不斷變化變量是程序中最基本的存儲單元,包含變量類型、變量名和存儲的值2變.量的作用:用于在內存中保存數據3使.用變量注意:?Java中每個變量必須先聲明,后使用使用變量名來訪問這塊區域的數據?變量的作用域:其定義所在的一對{}內

?變量只有在其作用域內才有效同一個作用域內,不能定義重名的變量(1)聲明變量語法:<數據類型><變量名稱〉,例如:intvar;(2)變量的賦值語法:<變量名稱〉=<值>,例如:var=10;(3)聲明和賦值變量語法:<數據類型><變量名〉=<初始化值〉,例如:intvar=10;4.變量的分類:(1)按數據類型,對于每一種數據都定義了明確的具體數據類型(強類型語言),在內存中分配了不同大小的內存空間.^^l(floatdouble)「整數類型側徐horti.^^l(floatdouble)(primitivetypefj字箝型(char)(D按聲明的位置的不同*在方法體外,類體內聲明的變量稱為成在方法體內部聲I癮稱為局部變量。丄亠I麴變量利曲㈱)二者在初始化值方面的異同:二者在初始化值方面的異同:方泳犍耕定躺餐)/—I—,.—I?——.同:都有生命周期5.基本數據類型嗜:局部變量除形參外,需顯式初始化。5.基本數據類型腫】曲擲麻Nf加呻業加打1整數類型:byte(1字節)、short(2字節)、int(4字節)、long(8字節)Java各整數類型有固定的表數范圍和字段長度,不受具體OS的影響,以保證java程序的可移植性。java的整型常量默認為int型,聲明long型常量須后加T或‘L'java程序中變量通常聲明為int型,除非不足以表示較大的數,才使用long浮點類型:float(4字節)、double(8字節)與整數類型類似,Java浮點類型也有固定的表數范圍和字段長度,不受具體操作系統的影響。浮點型常量有兩種表示形式:(1)十進制數形式:如:5.12,512.0f,.512(必須有小數點)(2)科學計數法形式:如:5.12e2,512E2,100E-2float:單精度,尾數可以精確到7位有效數字。很多情況下,精度很難滿足需求。double:雙精度,精度是float的兩倍。通常采用此類型。Java的浮點型常量默認為double型,聲明float型常量,須后加‘f'或‘F'。字符類型:char(2字節)char型數據用來表示通常意義上“字符”

?Java中的所有字符都使用Unicode編碼,故一個字符可以存儲一個字母,一個漢字,或其他書面語的一個字符。字符型變量的三種表現形式:字符常量是用單引號(‘’)括起來的單個字符。如charcl='a';charc2='中';charc3=9;Java中還允許使用轉義字符、’來將其后的字符轉變為特殊字符型常量。如charc3=‘\n';//'\n'表示換行符直接使用Unicode值來表示字符型常量:‘\uXXXX'。其中XXXX代表一個十六進制整數。^D\uOOOa表示\n。char類型是可以進行運算的。因為它都對應有Unicode碼。ASCII碼:不能表示所有字符。相同的編碼表示的字符不一樣:比如,130在法語編碼中代表了氏在希伯來語編碼中卻代表了字母GimelUnicode編碼:—種編碼,將世界上所有的符號都納入其中。每一個符號都給予一個獨一無二的編碼,使用Unicode沒有亂碼的問題。Unicode只規定了符號的二進制代碼,卻沒有規定這個二進制代碼應該如何存儲。?無法區別Unicode和ASCII:計算機無法區分三個字節表示一個符號還是分別表示三個符號。另外,我們知道,英文字母只用一個字節表示就夠了,如果unicode統一規定,每個符號用三個或四個字節表示,那么每個英文字母前都必然有二到三個字節是0,這對于存儲空間來說是極大的浪費。UTF-8:UTF-8是在互聯網上使用最廣的一種Unicode的實現方式。UTF-8是一種變長的編碼方式。它可以使用1-6個字節表示一個符號,根據不同的符號而變化字節長度。UTF-8的編碼規則:對于單字節的UTF-8編碼,該字節的最高位為0,其余7位用來對字符進行編碼(等同于ASCII碼)。對于多字節的UTF-8編碼,如果編碼包含n個字節,那么第一個字節的前n位為1,第一個字節的第n+1位為0,該字節的剩余各位用來對字符進行編碼。在第一個字節之后的所有的字節,都是最高兩位為"10",其余6位用來對字符進行編碼。布爾類型:booleanboolean類型用來判斷邏輯條件,一般用于程序流程控制boolean類型數據只允許取值true和false,無null。Java虛擬機中沒有任何供boolean值專用的字節碼指令,Java語言表達所操作的boolean值,在編譯之后都使用java虛擬機中的int數據類型來代替:true用1表示,false用0表示。6.基本數據類型變量間轉換(1)自動類型轉換:容量小的類型自動轉換為容量大的數據類型。數據類型按容量大小排序為:char弋有多種類型的數扌據混合運算時,系統首先自動將所有數據轉換成容量最大的那種數據類型,然后再進行計算。?byte,short,char之間不會相互轉換,他們三者在計算時首先轉換為int類型。boolean類型不能與其它數據類型運算。任何基本數據類型的值和字符串(String)進行連接運算時(+),基本數據類型的值將自動轉化為字符串(String)類型。字符串類型:StringString不是基本數據類型,屬于引用數據類型使用方式與基本數據類型一致。例如:Stringstr="abed";?—個字符串可以串接另一個字符串,也可以直接串接其他類型的數據。例如:str=str+"xyz";System.out.println(3+4+"Hello!");〃輸出:7Hello!System.out.println("Hello!"+3+4);//輸出:Hello!34System.out.println(‘a'+1+"Hello!");//輸出:98Hello!

System.out.println("Hello"+‘a'+1);//輸出:Helloal強制類型轉換自動類型轉換的逆過程,將容量大的數據類型轉換為容量小的數據類型。使用時要加上強制轉換符:(),但可能造成精度降低或溢出,格外要注意。通常,字符串不能直接轉換為基本類型,但通過基本類型對應的包裝類則可以實現把字符串轉換成基本類型。女如Stringa=“43”;inti=Integer.parseInt(a);boolean類型不可以轉換為其它的數據類型。關于進制:所有數字在計算機底層都以二進制形式存在。二進制:Java整數常量默認是int類型,當用二進制定義整數時,其第32位是符號位;當是long類型時,二進制默認占64位,第64位是符號位二進制的整數有如下三種形式:(1)原碼:直接將一個數值換成二進制數。最高位是符號位(2)負數的反碼:是對原碼按位取反,只是最高位(符號位)確定為1。(3)負數的補碼:其反碼加1。計算機以二進制補碼的形式保存所有的整數。(4)正數的原碼、反碼、補碼都相同為什么要使用原碼、反碼、補碼表示形式呢?根據運算法則減去一個正數等于加上一個負數,即:1-1=1+(-1)=0,所以機器可以只有加法而沒有減法,這樣計算機運算的設計就更簡單了。十進制與二進制互轉:moi]計[ionoom]g=。吧no呱+ini1111]*=[0000odoo]^[oooo0000]j二進制轉成十進制:乘以2的幕數十進制轉成二進制:除以2取余數2.4運算符運算符是一種特殊的符號,用以表示數據的運算、賦值和比較等。算術運算符賦值運算符:=,+=,-=,*=,/=,%=比較運算符(關系運算符):==,!=,<,>,<=,>=,instanceof,檢查是否是類的對象,如"Hello"instanceofString,true邏輯運算符:&:邏輯與,|:邏輯或,!:邏輯非,&&:短路與,||:短路或,人:邏輯異或(1)“&"和“&&"的區別:單&時,左邊無論真假,右邊都進行運算;雙&時,如果左邊為真,右邊參與運算,如果左邊為假,那么右邊不參與運算。(2)“|"和“||"的區別同理,||表示:當左邊為真,右邊不參與運算。(3)異或(人)與或(|)的不同之處是:當左右都為true時,結果為false。理解:異或,追求的是“異"。位運算符:<<,>>,>>>(無符號右移),&,|,人,?(位運算是直接對整數的二進制進行的運算)三元運算符:(條件表達式)?表達式1:表達式2;true選擇表達式1,false選擇表達式2。2.5程序流程控制順序結構程序從上到下逐行地執行,中間沒有任何判斷和跳轉。?分支結構根據條件,選擇性地執行某段代碼。有if???else和switch-case兩種分支語句。循環結構根據循環條件,重復性的執行某段代碼。有while、do-while^for三種循環語句。注:JDK1.5提供了foreach循環,方便的遍歷集合、數組元素。1順序結構:Java中定義成員變量時采用合法的前向引用2.分支語句:(1)if-else結構:條件表達式必須是布爾表達式(關系表達式或邏輯表達式)、布爾變量(2)switch-case結構:switch(表達式)中表達式的值必須是下述幾種類型之一:byte,short,char,int,枚舉(jdk5.0),String(jdk7.0);case子句中的值必須是常量,不能是變量名或不確定的表達式值;break語句用來在執行完一個case分支后使程序跳出switch語句塊;3?循環結構:在某些條件滿足的情況下,反復執行特定代碼的功能for循環:for(①初始化部分;②循環條件部分;④迭代部分){③循環體部分;}初始化部分可以聲明多個變量,但必須是同一個類型,用逗號分隔①可以有多個變量更新,用逗號分隔④while循環:①初始化部分while(②循環條件部分){循環體部分;迭代部分;}do-while循環:do-while循環至少執行一次循環體。①初始化部分;do{循環體部分迭代部分}while(②循環條件部分);嵌套循環:將一個循環放在另一個循環體內,就形成了嵌套循環。4.特殊關鍵字的使用:break、continuebreak只能用于switch

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論