一件事情從開始到結(jié)束忍坷,需要先做什么粘舟,再做什么熔脂,最后再怎么做,這段過(guò)程就是一個(gè)流程柑肴。程序邏輯處理也是一個(gè)流程霞揉,java中有專門的流程控制語(yǔ)句,主要分為這幾種:順序晰骑,判斷适秩,選擇,循環(huán)硕舆。
1.順序流程?
順序流程就是代碼一行一行往下執(zhí)行秽荞,不根據(jù)條件判斷是否需要執(zhí)行。
示例代碼:
public static void main(String[] args){
//順序執(zhí)行抚官,根據(jù)編寫的順序扬跋,從上到下運(yùn)行
int a=1;
int b=2;
System.out.println(a+b);
}
2.判斷流程
判斷流程就是根據(jù)條件判斷是不是要去執(zhí)行這段代碼,在生活中比如如果下雨就要帶傘凌节,不下雨就不帶傘钦听,這就是一個(gè)判斷流程。java中判斷流程控制語(yǔ)句是if...else...,if...else if...else
if...else... ?語(yǔ)法:
if(條件) {
處理流程1;
}else {
處理流程2;
}
如果滿足if里的條件刊咳,就會(huì)走if后邊大括號(hào)里的流程1彪见,否則就會(huì)走else后的大括號(hào)里的流程2;也可以只寫if娱挨,不寫else余指,既:
if(條件) {
處理流程1;
}
這樣如果滿足條件就走處理流程1,不滿足就什么流程也不走跷坝。
示例代碼:
public static void main(String[] args){
// 定義變量
int a = 1;
if(a>= 0) {//條件
System.out.println("流程1");
} else{
System.out.println("流程2");
}
}
if..else...語(yǔ)句作用等同于之前說(shuō)的三目運(yùn)算符
示例代碼:
public static void main(String[] args) {
int a = 1;
int b = 2;
int max;//定義變量酵镜,保存a和b的較大值
if(a > b) {
max = a;
} else {
max = b;
}
//等同于三元運(yùn)算符形式
max = a > b ? a:b;、柴钻、如果a>b,max=a,否則max=b
}
if...else if...else語(yǔ)法:
if (條件1) {
流程1;
} else if (條件2) {
流程2;
}
...
}else if (條件n) {
流程n;
} else {
流程n+1;
}
這種可以有多個(gè)判斷條件淮韭,如果滿足if里的條件,就會(huì)走if后邊大括號(hào)里的流程贴届,不滿足if但是滿足else if里的條件靠粪,就會(huì)走else if后邊大括號(hào)里的流程,否則就會(huì)走else后的大括號(hào)里的流程毫蚓;也可以不寫最后的else
示例代碼:
public static void main(String[] args) {
int score = 100;
if(score<0 || score>100){
System.out.println("你的成績(jī)是錯(cuò)誤的");
}else if(score>=90 && score<=100){
System.out.println("你的成績(jī)屬于優(yōu)秀");
}else if(score>=80 && score<90){
System.out.println("你的成績(jī)屬于好");
}else if(score>=70 && score<80){
System.out.println("你的成績(jī)屬于良");
}else if(score>=60 && score<70){
System.out.println("你的成績(jī)屬于及格");
}else {
System.out.println("你的成績(jī)屬于不及格");
}
}}
3.選擇流程
switch語(yǔ)法:
switch(表達(dá)式) {
case 常量值1:
流程1;
break;
case 常量值2:
流程2;
break;
...
default:
流程n+1;
break;
}
switch括號(hào)里是一個(gè)表達(dá)式占键,如果表達(dá)式值和case后的常量相等,就走對(duì)應(yīng)流程元潘,如果都沒(méi)有對(duì)應(yīng)的畔乙,就走default,default也可以不寫翩概,但是推薦寫上牲距。每個(gè)case后的流程最后都要寫break返咱;否則會(huì)繼續(xù)走下一個(gè)case。
示例代碼:
public static void main(String[] args) {
int i = 3;
switch (i){
case 1:
System.out.println("1");
break;
case 3:
System.out.println("3");//i為3牍鞠,會(huì)走這里流程咖摹,但是因?yàn)闆](méi)有break,還會(huì)走下個(gè)case皮服,一直到遇到break或者走到default
case 5:
System.out.println("5");
break;
default:
System.out.println("default");
}
}
4.循環(huán)流程
循環(huán)就是一段代碼執(zhí)行多次楞艾,就像小時(shí)候老師罰寫作業(yè)一樣,一個(gè)字寫20遍龄广。java循環(huán)流程控制語(yǔ)句有:for硫眯,while,do...while
for語(yǔ)法:
for(初始化表達(dá)式1; 布爾表達(dá)式2; 步進(jìn)表達(dá)式3){
流程
}
初始化表達(dá)式1定義一個(gè)變量并賦一個(gè)值择同,布爾表達(dá)式2會(huì)判斷這個(gè)值是否滿足條件两入,滿足就走大括號(hào)里流程,然后按照步進(jìn)表達(dá)式3改變初始表達(dá)式1定義的變量值敲才,再根據(jù)布爾表達(dá)式2判斷裹纳,一直這樣循環(huán),知道不滿足布爾表達(dá)式紧武,for循環(huán)結(jié)束剃氧。
示例代碼:
public static void main(String[] args) {
//定義變量i從0開始,循環(huán)條件為i<10,每次i會(huì)+1阻星,直到i=10時(shí)朋鞍,不滿足條件,循環(huán)結(jié)束妥箕,結(jié)果會(huì)輸出0 1 2 3 4 5 6 7 8 9
for(int i = 0; i< 10; i++) {
System.out.println(i);
}
}
while語(yǔ)法:
初始化表達(dá)式1
while(布爾表達(dá)式2){
循環(huán)體
步進(jìn)表達(dá)式3
}
while語(yǔ)法是先定義一個(gè)初始化變量滥酥,在初始化表達(dá)式1賦值,然后判斷是否滿足布爾表達(dá)式2畦幢,滿足就進(jìn)入大括號(hào)內(nèi)坎吻,執(zhí)行循環(huán)體,步進(jìn)表達(dá)式3是對(duì)初始化變量的操作宇葱,每次循環(huán)之后判斷是否符合布爾表達(dá)式2瘦真,不符合則結(jié)束循環(huán)。
示例代碼:
public static void main(String[] args) {
//while循環(huán)10次
int i = 1;//定義初始化變量
while(i<=10){//循環(huán)條件<=10
System.out.println(i);
i++;//步進(jìn)
}
}
do...while...語(yǔ)法:
初始化表達(dá)式1
do{
循環(huán)體
步進(jìn)表達(dá)式2
}while(布爾表達(dá)式3);
do...while...語(yǔ)句先定義一個(gè)初始化變量黍瞧,在初始化表達(dá)式1賦值吗氏,然后就進(jìn)入大括號(hào)內(nèi),執(zhí)行循環(huán)體雷逆,步進(jìn)表達(dá)式2是對(duì)初始化變量的操作,執(zhí)行大括號(hào)內(nèi)代碼后污尉,判斷是否滿足布爾表達(dá)式3膀哲,滿足就循環(huán)往产,不滿足就結(jié)束循環(huán)。do...while...和while相比是先執(zhí)行循環(huán)內(nèi)容某宪,然后再判斷是否繼續(xù)循環(huán)仿村。
最后再說(shuō)兩個(gè)關(guān)鍵字,break和continue兴喂。break用在循環(huán)體中直接結(jié)束循環(huán)蔼囊,continue用在循環(huán)體中,continue之后代碼不執(zhí)行衣迷,跳出本次循環(huán)畏鼓,開始下次循環(huán)。
---------------------
作者:自習(xí)小夫子
來(lái)源:CSDN
原文:https://blog.csdn.net/m0_37541043/article/details/89244029
版權(quán)聲明:本文為博主原創(chuàng)文章壶谒,轉(zhuǎn)載請(qǐng)附上博文鏈接云矫!