應用場景:
在需求中,需要進行“多次”,“反複“,操作時,需要使用循環語句來實作。
#1.if 語句 else if 用法
用途:主要是用于你知道循環次數的場合,有限次數。
1)if(初始化語句;判斷語句;控制語句){
//控制語句一般是自增,自減這樣的運算,當然你也可以變量的平方,幾倍幾倍都可以,很開放,看你實際情況。
循環體
}
##知識點:
比較字元串 是否相等,比較的是值 ,字元序列
equals() (這個是比較字元串是否相等,比較有意思) 以後你可用在判斷,輸入的使用者名和密碼是否正确,對吧。 very important .哈哈哈
文法:
字元串1.equals(字元串2); 相等 傳回 true ,不等 傳回 false
案例:
s1.equals(s2);
s1.equals(“abc”);
“abc”.equals("'abc")
public static void main(String[] args) {
Scanner superman = new Scanner(System.in);
System.out.println("-- 輸入字元串1");
String s1 = superman.next();
System.out.println("-- 輸入字元串2");
String s2 = superman.next();
System.out.println(s1 .equals(s2) );
System.out.println(s1.equals("abc"));
System.out.println("abc".equals("abc"));
}
#2.switch語句用法
Switch(表達式){
//用途:适用于多種情況判斷,但case必須為常量,而不是變量。可以為(byte,short,int,char,string 的資料類型)
case 1; //siwtch 就是根據表達式,判斷哪個case和它的結果比對,哪個結果比對,就執行哪種情況。
語句體1; //注意case 1 case 2 等,case必須是常量。break是用來結束switch語句的。
break;
case 2;
語句體2;
break;
...........
}
那還有一個有意思的現象,傳聞中的case穿透,
就是你case語句體中,沒有break語句,那語句體就會一直往下執行,語句體2,3,4.。。。。直到遇見break 才罷休。
常識:水仙花數就是指一個三位數,它的各位數 十位數 百位數的三次方之和還等于它本身。
#3.while 循環
初始化語句
while( 判斷語句){
循環體語句;
控制語句;
}
特别注意有個作用,while:
因為 while中初始化語句,在循環外面,是以後續你還想用變量,隻能使用while語句。
因為if 和其它循環語句,初始化語句在循環内,
循環執行後,變量就會從記憶體中消失,你也用不了了。 while不同初始化語句在循環上面,你執行完循環後,還可以調用循環外定義的變量。
案例:
int count=0;
double paper=0.1;
int lf=884830;
while (paper <=lf){
paper*=2;
syso ()paper;
count++;
}
syso(count);
//你還是可以輸出count這個變量,因為變量在while循環外,先定義了,但是if switch語句就不能調用這個循環内的變量了,因為變量在運作結束後就消失了。
//用途:你不知道循環次數的場合。
死循環:用在,你需要反複的輸入輸出,查詢之類的,你也不知道次數,也算不出來,那還不如用死循環包裹着。哈哈哈。
(例如,使用者名、密碼、驗證碼反複的輸入來進行驗證,對吧等等很多案例。)
while(true){
循環體語句;
}
//用途:這個用途很重要,死循環,例如 使用者輸入一個密碼不對,你就需要反複的輸入密碼,就需要這個死循環。主要用來反複執行某項操作,省得你一直複制黏貼代碼。
有意思的現象,break 标題号,可以結束标題外面的循環。
例如:
标題号名 while(true){
switch(表達式){
case 1;
break 标題号;
}
}
// 這樣可以結束掉 整個循環啊,就是結束死循環(如果死循環外面是個大循環,那就結束掉帶标題号的那個大循環)
//如果沒有标題号,那就結束掉目前循環switch。
加了标題号,這樣就可以結束掉外面的這個,while大循環了。
#4.跳轉語句 break和continue
break:
break 是用來結束掉整個循環語句 ,不管是while還是switch語句,直接結束掉整個循環。執行 循環外的語句。
continue:
coinue語句是用來跳過這次循環(記為n次)(continue下面的語句體,老娘不執行了,直接執行下一次(第n+1次)循環))哈哈哈。
do( ) while { } //很少用,但是可能你的同僚會用,你要知道的是,無論發生任何情況,都會先do一次,先執行一次。然後執行while {}中的語句體
continue //用途主要用于 跳過某次循環體内容的執行,直接執行下一次
break // 用的很多了,主要是結束目前的整個循環。很帶勁兒 ,哈哈,看你不爽,想停就停
3. Random 用途:産生随機數。
java.util.Random;
Random r=new Random();
int a = r.nextint(10);
// 用途:用于産生随機數,此處程式用于産生0-10,的随機數,0 1 2 。。9,你知道了吧包括前面數字0,不包括後面數字10. 就是一個區間 [0,10)
while(true){
sout();
if ( ){
else if ( ){
}
else
sout();
break;
}
}
Conclusion:
1.你知道循環次數用,for
你不知道循環次數,用while
需要反複操作的用while(true)語句{} 死循環語句
2.switch case ,适用于比對case後面的常量值,比對上了,你就執行。
3.因為 while中初始化語句,在循環外面,是以後續你還想用變量,隻能使用while語句。
因為if 和其它循環語句,初始化語句在循環内,
循環執行後,變量就會從記憶體中消失,你也用不了了。 while不同初始化語句在循環上面,你執行完循環後,還可以調用循環外定義的變量。