1. 程式人生 > >Java基本知識(運算符/選擇結構語句/循環結構語句/方法/標識符)

Java基本知識(運算符/選擇結構語句/循環結構語句/方法/標識符)

java基礎知識 運算符 選擇結構語句和循環結構語句 標識符 方法(函數)

Java基本知識(運算符/選擇結構語句/循環結構語句/方法/標識符)
一、Java標識符
給類、接口、方法等命名的字符序列。
1、標識符組成
(1)英文字母大小寫;
(2)數字(不能以數字開頭);
(3)$和_。
2、命名規則
常量:每個單次字母均大寫,若由多個單詞組成,則每個單詞間用下劃線隔開。
變量、方法:第一個單詞全部小寫,若由多個單詞組成,則第一個單詞全部小寫,從第二個單詞開始,每個單詞首字母大寫其他單詞首字母小寫。
包:所有字母都小寫,多級包采用域名反寫,每級用“.”隔開。
類、接口:每個單詞首字母大寫,其余字母均小寫。
二、變量
1、分類
(1)基本數據類型
整數類型:byte、short、int(整數類型默認類型)、long
浮點類型:float、double(浮點類型默認類型)
字符類型:char
布爾類型:boolean(true、false)
註意事項:long類型在使用時應該在後面添加L/l,若數據範圍未超過int型範圍,L/l可省略;float類型在使用時,需要在後面添加F/f。
(2)引用數據類型
2、變量計算註意問題
(1)盡量在同一個數據類型下進行計算;
(2)當不同類型的數據進行計算時,默認類型提升。
byte、shout、char三種類型的所有計算結果都默認為int型。
例如:byte b1=3,b2=4,b; b=b1+b2; b=3+4;
哪句是編譯失敗的呢?為什麽呢?
解:b=b1+b2;編譯失敗,byte,short,char之間相互不轉換,一旦進行運算,默認提升為一個int類型,兩邊類型不匹配,所以失敗。
(3)高級類型向低級類型轉換時需用強制類型轉換。
目標數據類型 變量名=(目標數據類型)(變量值);
3、變量若已經聲明未賦值,則必須在使用前對其賦值。
三、賦值運算符
基本賦值運算符:=
擴展賦值運算符:+=、=、/=、%=(擴展賦值運算符隱藏了強制類型轉換)。
例如:short s+=1;等價於short s=(short)(s+1);
並非等價於s=s+1。
四、邏輯運算符
1、基本的邏輯運算符
(1)邏輯與&:有false則false,否則為ture;
(2)邏輯或|:有true則ture,否則為false;
(3)邏輯異或^:相同則為false,不同則為true;
(4)邏輯非!:非true則false,非false,則true,偶數個為本身。
2、擴展的邏輯運算符
(1)邏輯雙與&&:作用同邏輯單與,如果左邊表達式為false,則右邊表達式不再執行,具有短路效果。而邏輯單與&,無論左邊表達式是什麽,右邊表達式都會執行。
(2)邏輯雙或||:作用同邏輯單或,如果左邊表達式為true,則右邊表達式不再執行,具有短路效果。而邏輯單或|,無論左邊表達式是什麽,右邊表達式都會執行。
五、三目(元)運算符
(表達式)? true的結果:false的結果;
首先判斷表達式是否成立,如果比表達式成立,就執行true的結果,否則,false的結果。
六、算數運算符
1、基本的算數運算符
+、-、
、/(結果取整)、%(取余)
+:(1)運算符;(2)表示正數;(3)字符串的連接符。
2、擴展的算數運算符
++、--
單獨使用:無論++或者--在數據前還是數據後,都會自增1或者自減1。
參與運算:如果++或者--在數據前,先自增或者自減,再參與運算,如果++或者--在數據後,先運算,再進行自增或者自減。
七、鍵盤錄入
1、創建鍵盤錄入對象。
Scanner scanner = new Scanner(System.in) ;
2、導包。
import java.util.Scanner;
java.lang.* 包不用導包,Scanner是java.util.Scanner,需要導包。
3、接收鍵盤錄入的數據(以int類型為例)。
int number = sc.nextInt() ;
3、輸出數據。
八、if語句(選擇結構)
格式一:適合單個條件的判斷
if(條件表達式){
語句;
}
格式二:if(條件表達式){
語句1;
}else{
語句2;
}
格式三:if(條件表達式1){
語句1;
}else if(條件表達式2){
語句2;
}else if(..){
語句3;
}else{
語句n+1;
}
九、選擇結構switch語句
1、格式:
switch(表達式){
case 值1: 語句1; break ;
case 值2: 語句2; break;
....
default: 語句n+1; break; }
2、註意事項:
(1)case語句的後面只能跟常量,不能跟變量! js中的case後面是可以是變量也可以是表達式。
(2)default語句可以在switch語句中的任何位置,不影響代碼執行,如果在語句中,break最好帶上。
(3)建議把break帶上,否則會造成case穿透現象。
(4)switch語句的結束條件:break語句結束,默認執行到末尾語句結束。
(5)case語句的後面是冒號,表示和switch語句中的表達式進行比較。
(6)switch語句後面的表達式的類型可以是byte,short,int,char。jdk5以後,可以跟枚舉。jdk7以後,可以跟String類型。
十、for語句(循環語句)
1、格式:
for(初始化語句;條件語句;步長語句){
循環體語句;
}
2、註意事項:
(1)條件語句,不管是一個簡單的表達式還是復雜的表達式,都是boolean類型;
(2)初始化語句,和條件表語句後面都要帶上分號。
十一、while語句(循環語句)
1、格式:
基本格式:while(條件表達式){
循環語句體;
}
擴展格式:(優於基本格式)
初始化語句 ;
while(條件表達式){
循環體語句;
步長語句;
}
2、 while循環和for循環的區別:
(1)從內存角度考慮,for循環優於while循環,for循環語句執行完畢之後,變量會及時被GC垃圾回收期回收掉;while循環,可以去訪問循環語句中的變量。
(2)從具體需求考慮,如果循環次數明確的情況下,應用for循環,如果不知道要循環次數,應該去使用while循環。
十二、do-while語句(循環語句)
1、格式:
基本格式: do{
循環體語句
}whiel(判斷條件語句) ;
擴展格式: 初始化語句;
do{
循環體語句;
控制體語句;(步長語句)
}while(條件判斷語句) ;
2、與for、while語句的區別:循環體至少執行一次。
3、實際開發中,優先考慮順序依次為:for語句、while語句、do-while語句。
十三、break、continue、return作用與區別
break:表示中斷,結束。不能單獨使用,一般在switch語句或者循環語句中使用。
continue:繼續的意思,跳出當前循環,直接進入一次循環
單獨不能使用,在循環語句中使用較多。
return:方法的返回值 ,會帶回一個結果。
十四、方法(函數)
完成特定功能的代碼塊。
1、格式:
public static 返回類型 方法名(形參表){
函數體
}
2、方法格式的解釋:
(1)public static: 方法是靜態的,公共的方法。
(2)返回類型: 根據具體的需求,返回的類型,即用什麽樣的數據類型結束。
(3)方法名:當前代碼塊的命名。命名規則:字母全小寫,如果 是多個單詞,則第一個單詞全部小寫,第二個單詞開始每個單詞首字母大寫。
(4)return: 將當前代碼的計算結果,返回給調用者。
3、調用方法
(1)單獨調用。適用於無返回值類型的方法。
(2)輸出調用。直接輸出了結果,寫死了,不能對結果進行操作。不能用於無返回值的方法。
(3)賦值調用。可以結果進一步操作。適用於有返回值類型的方法。不能用於無返回值的方法。
4、註意事項:
(1)方法和方法是平級關系,一個方法中不能再定義方法。
(2)定義一個方法,形式參數必須有數據類型,否則會出現問題。
(3)在主函數main()中調用方法的時候,實際參數中不需帶數據類型。
(4)有大括號的地方不能有分號,有分號的地方不能有大括號。
十五、方法重載
方法名相同,參數不同(個數或類型不同,均可)。
註意:對程序進行測試的時候,測試錯誤數據,正確數據,邊界數據。

Java基本知識(運算符/選擇結構語句/循環結構語句/方法/標識符)