Java标识符命名规则,运算符,分支结构
                                                            生活随笔
收集整理的這篇文章主要介紹了
                                Java标识符命名规则,运算符,分支结构
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.                        
                                Java標識符命名規(guī)則,運算符,分支結(jié)構(gòu)
1 Java標識符命名規(guī)則
1.1命名規(guī)則案例
163郵箱,注冊郵箱名限制6~18個字符,可使用字母,數(shù)字,下劃線,需要以字母開頭命名規(guī)則分析1.有長度限制2.可用字符限制(字母,數(shù)字,下劃線)3.起始限制 要求使用字母開頭1.2基于阿里巴巴Java開發(fā)規(guī)約限制 的標識符命名規(guī)范
標識符是是么???程序員在代碼開發(fā)中,可以用于自定義的名稱信息,包括變量名,方法名,類名,接口名……AJCG 標識符命名規(guī)范:1.在標識符有且只允許使用英文字母(A~Z,a~z),數(shù)字(0~9),唯一可以使用的標點符號下劃線(-)2.標識符要求務(wù)必使用英文字母開頭,不允許使用其他字符3.Java中的標識符嚴格區(qū)分大小寫,大寫和小寫不同!!!4.標識符沒有嚴格長度限制,但是會根據(jù)實際情況,限制標識符長度。5.標識符要求做到【見名知意,動賓結(jié)構(gòu)】正確案例studentName studentAge studentScore 大小寫區(qū)分不同單詞getStudentName setStudentName 動賓結(jié)構(gòu)【見名知意】getStudentAge setStudentAge錯誤案例:含糊不清,無法分析變量名沒有明確的語義性,要求變量名定義單獨成立,一行一個int a,b,c,d,e;看似高階,實則低階payBeizhu 不能出現(xiàn)英文和拼音混合zhiFuBeiZhu 不允許,拼音除專用名詞(alibaba beijing)之外,其他不允許使用tsgly 絕對不允許使用,閱讀性極差!!!6.標識符要求使用駝峰命名法或下劃線命名法駝峰命名法:小駝峰:標識符首字母小寫,之后的每一個單詞首字母大寫,作為區(qū)分標記studentName studentAge常用語:變量名,方法名大駝峰標識符每一個單詞首字母大寫FirstJava Demo1 Demo2ArrayIndexOutOfBoundsException數(shù)組下標越界BufferedInputStream常用于:類名,接口名class之后的名稱就是類名。下劃線命名法:所有單詞首字母全部大寫,不同單詞之間使用_分別Java_HOME MAX_VALUE MIN_VALUEMAX_ARRAY_SIZE DEFAULT_CAPACITY7.標識符不得使用已經(jīng)被Java占用的的關(guān)鍵字和保留字代碼中變顏色的內(nèi)容都不可以用于自定義標識符,例如 int float double 8.標識符在一定范圍內(nèi)唯一163郵箱絕對不可能出現(xiàn)兩個人賬號一樣!!!2.運算符
2.1算術(shù)運算符
開發(fā)中使用的算數(shù)運算符:+ - * / () = % 開發(fā)中使用要求:1.先乘除后加減2.除數(shù)不能為零3.從左至右基本原則4.有優(yōu)先級需求,使用括號處理5.= 賦值號, 將賦值號右邊的數(shù)據(jù),賦值給左側(cè)的變量 取余%:小學(xué)沒有學(xué)分數(shù)/小數(shù)10 ÷ 6 = 1 ... 41是商為結(jié)果4是余數(shù)開發(fā)中取余目標結(jié)果就是余數(shù),如果按上面的案例,結(jié)果為四除以/:Java規(guī)定:如果是整數(shù)相除,沒有小數(shù),取整!!!5 / 2 = 2;小案例:10 / 12 = ?結(jié)果為010 % 12 = ?結(jié)果為1012 / 10 = ?結(jié)果為1 12 % 10 = ?結(jié)果為225 / 3 = ?結(jié)果是825 % 3 = ?結(jié)果是1public class Demo1{public static void main(String[] args){int num1 = 10;int num2 = 20;num1 = num1 + num2; //num1 = 30/*【注意】代碼運行過程中,要求關(guān)注變量存儲數(shù)據(jù)變化過程。num1 目前數(shù)據(jù)存儲通過第七行代碼存儲內(nèi)容變化結(jié)果為30下方代碼執(zhí)行過程中,num1 = 30 num2 = 20 ==>num1 = 30 * 20 */num1 = num1 * num2; //num1 =600 num2 =20num1 = num1 - num2; //num1 =580num1 = num1 / num2; //num1 =29num1 = num1 % num2; //num1 = 9/*【注意】num2 數(shù)據(jù)存儲在整個的運算過程中,沒有發(fā)生任何變化因為num2 數(shù)據(jù)存儲內(nèi)容沒有被重新賦值[結(jié)論]變量數(shù)據(jù)存儲內(nèi)容,有且只有在被賦值的情況下,才可以修改*/System.out.println(num1);System.out.println(num2);} } 【增強版運算符】 += -= *= /= %= int num1 = 10; int num2 = 20;num1 = num1 + num2; num1 += num2; /* 優(yōu)勢:1.簡化代碼結(jié)構(gòu),節(jié)省代碼體量2.自帶buff,有特殊功能 */2.2自增資減運算符
自增自減運算符格式:++ 自增 ==>操作的變量數(shù)據(jù)內(nèi)容自增 1 -- 自減 ==> 操作的變量數(shù)據(jù)內(nèi)容自減 1 //自增自減運算符演示 public class Demo2{public static void main(String[] args){int num1 = 10;System.out.println(num1);/*自增運算符作用是操作的變量數(shù)據(jù)存儲內(nèi)容自增1 */System.out.println(num1++); //注意自增運算符的位置System.out.println(num1);System.out.println(++num1);System.out.println(num1);System.out.println();/*分析:1.所有的自增操作全部有效,num1 數(shù)據(jù)存儲結(jié)果原本是10通過兩次自增操作后,num1目前數(shù)據(jù)存儲情況為122.發(fā)現(xiàn)問題System.out.println(num1++); 為什么結(jié)果為10當前代碼運行時,num1數(shù)據(jù)存儲結(jié)果為10, ++自增操作在變量之后,執(zhí)行流程a.取值目前的num1數(shù)據(jù)內(nèi)容參與代碼運行,得到數(shù)據(jù)10b.代碼當前執(zhí)行完畢之后,num1完成自增操作 num1 10==>11看到的展示效果為10的情況 【先取值后自增】System.out.println(++num1); 為什么結(jié)果為12當前代碼運行時,num1數(shù)據(jù)存儲結(jié)果為11,++自增操作在變量之前,執(zhí)行流程a.首先num執(zhí)行自增操作,num11 ==> 12b.取值當前num數(shù)據(jù)存儲情況,參與代碼運行,得到數(shù)據(jù)12看到的展示效果為12的情況,【先自增后取值】【總結(jié)】++ 在變量之前,【先自增后取值】++ 在變量之后,【先取值后自增】自減操作同理代碼歧義性過大!!!*/} } 【語法總結(jié)】1. 自增自減運算符有且只能操作變量,不可以操作常量!!!2. 自增自減運算符在變量之前和之后,操作流程不同在變量之前,先操作后取值在變量之后,先取值后操作【使用建議】1.自增自減歧義性過大,代碼中盡量減少使用2.如果必要使用a.單獨發(fā)行int num = 10;num++;++num;b.使用 += 1 or -= 1 替換 自增自減運算符++num or num++ ==> num += 1--num or num-- ==> num -=1swift ios開發(fā)語言中,已經(jīng)禁用自增自減運算符,避免歧義,全部使用+= 1 和 -=1替換提高代碼閱讀性【自增自減運算符常用位置】1.循環(huán)操作2.面試題 【面試題】 int num = 5; int ret = num++ * ++num;num = ? ret = ? /* num 初始化數(shù)據(jù)為5自增自減運算符是針對于變量操作,自增自減運算符存在,一定會修改對應(yīng)的變量數(shù)據(jù)內(nèi)容目前表達式中的存在num++ 和++num針對于num的自增操作執(zhí)行了兩次所以num變量最終數(shù)據(jù)存儲結(jié)果為7ret的結(jié)果是取決于num在表達式中的數(shù)據(jù)提供效果ret = num++ * ++numnum++ 先取值,后自增針對于 ret計算表達式的數(shù)據(jù)提供為【5】num++ 取值之后自增,num數(shù)據(jù)存儲內(nèi)容為6++num 先自增,后取值++num針對于num數(shù)據(jù)存儲修改,num數(shù)據(jù)存儲內(nèi)容為7針對于ret的運算就是5*7 為35*/【面試題】 int num = 10; ++(num++)++ num = ?; /* 語法錯誤有小括號先處理括號中的內(nèi)容小括號的數(shù)據(jù)內(nèi)容對于整個表達式而言是一個【值/數(shù)據(jù)】,不是變量!!小括號里的內(nèi)容對外的結(jié)果不是num變量自增自減運算符有且只能操作變量 ,不能操作【常量】,同樣無法操作【值/數(shù)據(jù)】 */2.3關(guān)系運算符
判斷表達式兩端的數(shù)據(jù)結(jié)果是否滿足關(guān)系運算符需求,對外的結(jié)果是Boolean(true false)Java中開發(fā)使用的關(guān)系運算符:> < => <= != ==//關(guān)系運算符演示 public class Demo3{public static void main(String[] args){/*關(guān)系運算符對外的數(shù)據(jù)結(jié)果為Boolean這里定義一個Boolean變量ret存儲關(guān)系運算符結(jié)果*/boolean ret = 5>2;System.out.println(ret);//trueret = 5<2;javaSystem.out.println(ret);//falseret = 5 >= 5;System.out.println(ret);//trueret = 5<= 3;System.out.println(ret);//falseret = (5 == 5);System.out.println(ret);//trueret = (5 != 15);System.out.println(ret); //true}}2.4邏輯運算符
條件疊加,多個條件整合成一個完整的條件分析邏輯運算符對外最終結(jié)果為Boolean 邏輯與與&&同真為真,有假即假成為會員的條件:充值并消費500,充值不消費,消費不充值都不可 邏輯或或||有真即真,同假即假 邏輯非【取反!】強牛,犟,真變假,假變真 //邏輯運算符演示 public class Demo4 {public static void main(String[] args) {boolean ret = 10 > 5 && 5 > 2;System.out.println(ret); //trueret = 10 > 15 && 5 > 2;System.out.println(ret); //falseret = 10 > 15 || 5 > 2;System.out.println(ret); //trueret = 10 > 15 || 5 < 2;System.out.println(ret); //falseret = !(10 > 5);System.out.println(ret); // falseint num1 = 66;boolean ret1 = (num1 % 4 == 0 && num1 % 100 != 0) || (num1 % 100 == 0);System.out.println(ret1);} }2.5邏輯表達式短路原則
int num = 10; boolean ret = num > 15 && ++num >10;num = 10; ret = false;/* 結(jié)果分析&&同真為真,有假即假如果一個邏輯與表達式中出現(xiàn)了一個false條件,該邏輯表達式是否可能為true?絕對不可能!!!邏輯與表達式,計算機在運行過程中,一旦發(fā)現(xiàn)false條件!!當前邏輯與表達式已經(jīng)結(jié)果明確為false!!計算機為節(jié)約資源,從false條件開始,之后的所有表達式不在運行!!【邏輯與短路原則 同真為真,有假即假】 */int num = 10; boolean ret = num > 5 || ++num > 5;num = 10; ret = true; /* 結(jié)果分析:||有真即真,同假為假邏輯或表達式,計算機在運行過程中,一旦發(fā)現(xiàn)true條件!!!當前邏輯與表達式已經(jīng)結(jié)果明確為true!!計算機為節(jié)約資源,從ture條件開始,之后的所有表達式不在運行!!節(jié)約計算機資源。邏輯或短路原則 有真即真,同假即假。*/2.6運算符小案例
1.完成條件判斷書寫,判斷一個數(shù)值是否在0~100之間 int num = 50; //0 <== num <==100 數(shù)學(xué)規(guī)范,但不支持開發(fā) num >= 0 && num <== 100; //使用邏輯與表達式連接條件,限制當前num數(shù)據(jù)范圍在0~1002.完成條件判斷書寫,判斷一個字符是否為數(shù)字字符
char ch = '4';//字符變量 ch 存儲 字符常量 '4'==> 數(shù)字字符 ch >= '0' && ch <== '9'; //使用邏輯與表達式連接條件,限制當前ch字符數(shù)據(jù)存儲范圍是 '0' ~'9 //如果操作過程中涉及到字符內(nèi)容,有且只允許使用字符本身3.完成條件判斷書寫,判斷一個字符知否為大寫英文字母
char ch = 'Y'; ch >='A' && ch <='Z';4.完成條件判斷書寫,判斷一個字符是否為英文字母
char ch = 'h'; ch >= 'A' && ch <= 'Z'; //大寫英文字母條件 ch >= 'a' && ch <= 'z'; //小寫英文字母條件 //不可能出現(xiàn)一個英文字母既滿足大學(xué),也滿足小寫!!!滿足其一即可認為是英文字母 ch >= 'A' && ch <= 'Z' || ch >= 'a' && ch <= 'z'; (ch >= 'A' && ch <= 'Z' ) || (ch >= 'a' && ch <= 'z'); /* 以上兩個條件都是正確條件!!!小括號使用可以認為是一個整體!!!從閱讀性角度分析, 可能優(yōu)于沒有括號的版本邏輯運算符與優(yōu)先級高于或!!! 無需括號限制優(yōu)先級和整體性問題。*/5.完成條件判斷書寫,完成閏年條件判斷
閏年條件: 1.可以被4整除,但是不能被100整除 2.可以被400整除滿足以上任意條件都是閏年!!! int year = 2008; //可以被4整除 取余 4 余數(shù)為0 year % 4 == 0; //不能被100整除 year % 100 != 0; //可以被400整除 year % 400 == 0;year % 4 == 0 && year % 100 != 0 || year % 400 == 0 ; year%4==0&&year%100!=0||year%400==0;//拉胯3.分析結(jié)構(gòu)
3.1生活場景
會員等級:超市消費滿500元 黑鐵VIP消費滿5000元 白銀VIP消費滿50000元 黃金VIP消費滿500000元 鉆石VIP充值返現(xiàn):超市充值100 送10充值1000 送100充值10000 送1000充值100000 送10000學(xué)生成績等級:滿分100分90分以上 秀兒80分以上 良兒70分以上 中兒60分以上 過兒60分以下 讓你爹穿著拖鞋來校區(qū)3.2 if分支結(jié)構(gòu)
//格式 if(/*條件判斷boolean true or false*/){//語句體 } /* 執(zhí)行流程:代碼運行判讀if 之后小括號里面的數(shù)據(jù)內(nèi)容是否為TRUE,如果為TRUE執(zhí)行語句體內(nèi)容,如果為FALSE 不執(zhí)行。不管if 分支結(jié)構(gòu)中的語句體是否執(zhí)行,代碼依然會從if 大括號之后繼續(xù)執(zhí)行。*/ //if 分支結(jié)構(gòu)演示 public class Demo5 {public static void main(String[] args) {/*用戶消費滿68元,送停車券一張tatalprice總價*/int totalPrice = 150;if (totalPrice >= 68) {System.out.println("尊貴的用戶,送你一張停車券");}System.out.println("歡迎下次光臨!!!");}}3.3 if else分支結(jié)構(gòu)
//格式 if (/*條件判斷 boolean true or false*/) {//true 語句體} else {//false 語句體} /* 執(zhí)行流程:代碼執(zhí)行 if else 分支結(jié)構(gòu),首先判斷 if 之后小括號中的數(shù)據(jù)內(nèi)容判斷為TRUE,如果為TRUE 執(zhí)行if 大括號對應(yīng)的TRUE語句體。如果為FALSE 執(zhí)行 else 大括號對應(yīng)的FALSE語句體。執(zhí)行完畢繼續(xù)執(zhí)行后期的代碼。開發(fā)有一個梗世界上最遙遠的距離,不是我在你面前,你不知道我愛你,而是我在if里,你在else里 */ //if else分支結(jié)構(gòu)演示 public class Demo6 {public static void main(String[] args) {/*周年慶大酬賓,消費滿168元,送小拉菲一瓶,不滿送 足力健一雙*/int totalPrice = 200;if (totalPrice >= 168) {System.out.println("尊貴的用戶,送您一瓶小拉菲");} else {System.out.println("尊貴的用戶,送你一雙足力健");}System.out.println("歡迎您下次光臨!!!");int price = 888;if (price >= 666) {System.out.println("歡迎光臨,尊貴的某某某VIP用戶");} else {System.out.println("歡迎光臨,某某某用戶");}System.out.println("感謝光臨");} }3.4 if else-if分支結(jié)構(gòu)
//格式 if (/*條件匹配1*/) {//處理方式1 } else if (/*條件匹配2*/) { //處理方式2 } else if (/*條件匹配3*/) {//處理方式3 } else {//不滿足任何條件匹配的備選處理方式} /* 執(zhí)行流程:代碼運行 if else-if 分支結(jié)構(gòu),自上而下匹配if之后的小括號里面的條件,如果發(fā)現(xiàn)匹配項執(zhí)行對應(yīng)的處理方式,跳出分支結(jié)構(gòu),如果沒有任何一個if 條件滿足,執(zhí)行else 中的備選處理方式。if else-if分支結(jié)構(gòu)執(zhí)行完成,繼續(xù)執(zhí)行之后的代碼。*/ // if else-if 分支結(jié)構(gòu)代碼演示 public class Demo7 {public static void main(String[] args) {int totalPrice = 111;//消費金額遞增if (totalPrice >= 666 && totalPrice < 1688) {System.out.println("歡迎光臨,尊貴的鉑金VIP");} else if (totalPrice >= 1688 && totalPrice < 3888) {System.out.println("歡迎光臨,尊貴的黃金VIP");} else if (totalPrice >= 3888 && totalPrice <8888) {System.out.println("歡迎光臨,尊貴的鉆石VIP");} else if (totalPrice >= 8888) {System.out.println("歡迎光臨,尊貴的鉆紫VIP");}else {System.out.println("歡迎光臨,尊貴的用戶");}/*消費金額遞減對比上方的條件,遞減方式1.if 之后條件內(nèi)容沒有邏輯與判斷,效率高2.代碼量降低3.分析條件的羅列關(guān)系*/int price = 1980;if (price >= 8888) {System.out.println("歡迎光臨,尊貴的紫鉆VIP");} else if (price >= 3888) {System.out.println("歡迎光臨,尊貴的鉆石VIP");} else if (price >= 1688) {System.out.println("歡迎光臨,尊貴的黃金VIP");} else if (price >= 666){System.out.println("歡迎光臨,尊貴的鉑金VIP");} else {System.out.println("歡迎光臨,尊貴的用戶");}System.out.println("期待你的再次光臨");}}總結(jié)
以上是生活随笔為你收集整理的Java标识符命名规则,运算符,分支结构的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: python自学第13天之基础数据类型知
- 下一篇: 复购率计算分析
