java 6 基础教程_Java小白入门教程(6)——循环语句
提綱:
1、循環(huán)結構
2、while循環(huán)
3、do-while循環(huán)
4、for循環(huán)
5、break語句
6、continue語句
7、循環(huán)嵌套
8、作業(yè)
一、循環(huán)結構1.1 概念
條件滿足,某些代碼會被反復多次的執(zhí)行。條件不成立了,循環(huán)結束。0-n次。
1.2 為什么使用循環(huán)
開發(fā)中可能會把某些代碼需要執(zhí)行多次,如果使用CV大法,CV戰(zhàn)士,治標不治本。會出現以下問題
1、代碼過于臃腫!
2、代碼閱讀性極差!
3、代碼維護性極差!
循環(huán)的組成部分
1、初始化部分:對循環(huán)變量進行初始賦值。
2、循環(huán)條件部分:判斷循環(huán)變量是否滿足循環(huán)條件。
3、循環(huán)體部分:要循環(huán)執(zhí)行的具體的代碼。
4、更新循環(huán)變量部分:修改循環(huán)變量的值。二、循環(huán)語句2.1、while循環(huán)
while循環(huán)的語法結果:
while( 循環(huán)條件判斷 ){
//循環(huán)體 //(循環(huán)中變量的變化)}/*執(zhí)行流程: 首先判斷while之后的小括號里的循環(huán)條件的值:boolean--->true,false 如果是true,表示循環(huán)條件成立,那么執(zhí)行{}里的內容,然后再來判斷條件 如果是false,表示循環(huán)條件不成立,那么循環(huán)結束*//*注意事項: 1、學會循環(huán)過程推理,避免死循環(huán) 2、如果出現死循環(huán),ctrl+c 終止程序*///while循環(huán)的特點:先判斷條件,再執(zhí)行代碼。
while循環(huán)的流程圖:
示例代碼:
class Test2While {
public static void main(String[] args)
{
/* while( boolean類型的表達式 ){ } 示例: while( 活著 ){ 心臟跳一下 } */
//使用while循環(huán),來打印100遍的helloworld
//初始化一個變量,表示打印helloworld的次數 int i = 1; //1,2,3....100
while( i
System.out.println("Hello World!");
//i++; ++i;
}
System.out.println(i);
}}
課堂練習:
public class Test3While {
public static void main(String[] args)
{
//課堂練習:使用while循環(huán),打印10-1數字。
int i = 10;
while(i > 0){
System.out.println(i);
i--;
}
System.out.println("mian..over...");
/* System.out.println(10); System.out.println(9); System.out.println(8); System.out.println(7); ... System.out.println(1); */
}}
2.2、do-while循環(huán)
do-while循環(huán)的語法結構:
do{
//循環(huán)體 //(循環(huán)變量的變化)}while( 循環(huán)條件 );/*執(zhí)行流程: 首先執(zhí)行do后{}之間的內容,然后再判斷while里的循環(huán)條件。 如果條件為true,循環(huán)就繼續(xù)執(zhí)行。 如果條件為false,循環(huán)終止!*/
do-while的執(zhí)行流程圖
示例代碼:
public class Test5DoWhile {
public static void main(String[] args)
{
/* do{ //循環(huán)體 //(循環(huán)變量變化) }while( 循環(huán)的條件 ); */
//使用do-while循環(huán),來打印1-10這個數字
int i = 1;
do{
//循環(huán)體 System.out.println(i);
//(循環(huán)變量變化) i++;
}while( i
/* System.out.println(1); System.out.println(2); System.out.println(3); //... System.out.println(10); */
System.out.println("i--->" + i);
}}
對比while和do-while循環(huán)
while循環(huán),先判斷循環(huán)的條件,然后根據條件執(zhí)行里面的循環(huán)體。一句話:先判斷,再執(zhí)行。do-while循環(huán),先執(zhí)行一遍循環(huán)體,然后再來判斷條件。一句話:先執(zhí)行,再判斷。
2.3、for循環(huán)
for循環(huán)的語法結構:
for(表達式1:循環(huán)變量的初始化 ; 表達式2:循環(huán)的條件 ; 表達式3:循環(huán)變量的變化 ){
//循環(huán)體;}/*執(zhí)行流程:首先執(zhí)行表達式1:只執(zhí)行1次。慣用于初始化循環(huán)變量。然后執(zhí)行表達式2:循環(huán)的判斷條件:boolean-->true,false如果為true,執(zhí)行循環(huán)體;然后再執(zhí)行表達式3:變量的變化然后再判斷條件是否成立,如果成立,就繼續(xù)否則條件不成立,就結束整個循環(huán)*//*for循環(huán)的優(yōu)勢 1、for循環(huán)的語法結構很清晰。 2、for循環(huán),很方便的推算出循環(huán)的次數。*/
for執(zhí)行流程
示例代碼:
class Test7For {
public static void main(String[] args)
{
/* for(表達式1:循環(huán)變量的初始化 ; 表達式2:循環(huán)的條件 ; 表達式3:循環(huán)變量的變化 ){ //循環(huán)體; } */
//打印10遍"喝粥"
for(int i = 1 ; i
//循環(huán)體; System.out.println("喝粥..." + i);//i:1,2,3...10 }
//System.out.println(i);//此處不能打印i,因為i在for循環(huán)里定義的,超出了作用域。
System.out.println("Hello World!");
}}
課堂練習:
public class Test8For {
public static void main(String[] args)
{
//課堂練習:使用for循環(huán),求1-10的和 /* 分析過程: sum = 0; sum += 1;//+1 sum += 2;//+1 +2 sum += 3;//+1 +2 +3 ... sum += 10;//+1 +2 +3....+10 */
int sum = 0;//定義變量sum,用于表示1-10的和,這個結果,初始值是0 for(int i = 1; i
sum += i;//i:1,2,3...10 }
System.out.println(sum);
}}
for循環(huán)的特殊形式:了解性的內容
1、表達式2如果省略,表示循環(huán)永真。
循環(huán)條件默認是true--->成立2、表達式3:本來是跟在循環(huán)體后面執(zhí)行的。
但是不是很建議3、如果表達式1、3都省略,只剩表達式2-->相當于
while(循環(huán)條件){
}4、如果表達式1,2,3都省略:for(;;){}--->相當于
while(true){
}
示例代碼:
public class Test9For {
public static void main(String[] args)
{
/* 標準的for循環(huán) for(表達式1;表達式2;表達式3;){ 循環(huán)體; } for循環(huán)特殊形式:了解 1、表達式2如果省略,表示循環(huán)永真。 循環(huán)條件默認是true--->成立 2、表達式3:本來是跟在循環(huán)體后面執(zhí)行的。 但是不是很建議 3、如果表達式1、3都省略,只剩表達式2-->相當于 while(循環(huán)條件){ } 4、如果表達式1,2,3都省略:for(;;){}--->相當于 while(true){ } */
for(int i = 1;i
System.out.println(i);
}
}}
2.4、幾種循環(huán)的比較
1、對于同一個問題,三種循環(huán)可以互相替代。
2、循環(huán)次數確定的情況下,優(yōu)先選擇for循環(huán),循環(huán)次數不固定的建議while,do-while循環(huán)。
3、要防止無限循環(huán)--->死循環(huán)
三、循環(huán)的流程控制語句3.1、break語句
break關鍵字
break:詞義:打破,打碎,破壞
用法一:switch-case語句中,break用于防止switch穿透。
用法二:循環(huán)語句:while,do-while,for。強制結束了循環(huán)語句,無論循環(huán)條件是否滿足。
示例代碼:
class Test10Break {
public static void main(String[] args)
{
/* 循環(huán)停止:循環(huán)條件不成立,循環(huán)就停止了。 break語句:控制循環(huán)結構。 break的用法:詞義:打破,打碎, 用法一:switch-case語句中。用于結束case分支,結束switch語句。 用法二:針對于循環(huán)語句,一個循環(huán)中,一旦執(zhí)行了break語句,那么該循環(huán)就徹底的結束了 無論循環(huán)條件是否滿足。 */
for(int i= 1;i
if( i == 5){
break;//強制的結束循環(huán)。 }
System.out.println(i);
}
System.out.println("main..over...");
}}
3.2、continue語句
continue關鍵字
continue:詞義:繼續(xù)
只能在循環(huán)中使用,專門用于控制循環(huán)。
用法:結束當前這次循環(huán),循環(huán)下次會繼續(xù)執(zhí)行。
注意點:continue的大坑,
在while,do-while循環(huán)中使用,注意continue關鍵字和循環(huán)變量的變化的位置。防止出現死循環(huán)這種情況。
for循環(huán)中就沒有這種顧慮。
示例代碼:
public class Test2Continue {
public static void main(String[] args)
{
/* continue:結束了當前這次循環(huán)。循環(huán)下次繼續(xù)。 */
for(int i = 1;i
if( i == 5){
continue;//詞義:繼續(xù),結束當前這次循環(huán),下次繼續(xù)。 }
System.out.println(i);
}
System.out.println("main...over...");
int j = 0;
while(j < 10){
if( j == 5){
continue;
}
j++;
System.out.println("j-->"+j);
}
System.out.println("main...over........");
}}
四、循環(huán)嵌套
什么是多重循環(huán)?
多種循環(huán),指的就是循環(huán)的嵌套。
特點:外層循環(huán)執(zhí)行1次。內存循環(huán)要完整的執(zhí)行一遍。
戒驕戒躁:代碼量。
示例代碼:
public class Test3Loop {
public static void main(String[] args)
{
for(int i = 1;i
for(int j = 1;j
}
System.out.println();
}
}}/***************************/
課堂練習:打印乘法表
class Loop2 {
public static void main(String[] args)
{
/* 打印9*9的乘法表 1*1=1 2*1=2 2*2 =4 3*1=3 3*2=6 3*3=9 ... 9*1=9 9*2=18 9*3=27 9*4=36...9*9=81 分析: 打印 i * j i = 1 j = 1 i = 2 j = 1,2 i = 3 j = 1,2,3 i = 4 j = 1,2,3,4 .. i = 9 j = 1,2,3,4,5,6,7,8,9 */
for(int i = 1;i < 10;i++){
for(int j = 1;j
System.out.print(j+"*"+i+"="+i*j+"\t");
}
System.out.println();
}
}}
五、循環(huán)使用總結
1、學會找出代碼中運行的規(guī)律,完成對循環(huán)的代碼實現。
數組,集合,算法。。。
2、時時刻刻記住:循環(huán)中的坑
死循環(huán),while,do-while
continue關鍵字,while,do-while
3、學會循環(huán)變量的值推理過程:
循環(huán)變量的初始值,結束值,循環(huán)次數,變量怎么變化(變量的步長)
4、學會使用循環(huán)嵌套
一點一點的分析,推理
每一層循環(huán),每一個變量都是有意義上的。。
擴展幾種打印方式
System.out.println();
1.println();//打印后換行:print+line
2.print();//就打印,不換行
3.printf(" 占位符 \n",類型的變量);//格式化打印:print+format
%d,整數占位符
%s,字符串占位符
%f,浮點占位符
%.2f,%.3f
%c,字符占位符
示例代碼:
class Test4Print {
public static void main(String[] args)
{
/* 打印:System.out.xxxx() 1、println();print + line ,打印后換行 2、print();只是打印,不換行 3、擴展內容: printf();print+format ,格式化打印 */
System.out.println("Hello World!");//print + line ,打印后換行 System.out.println("hahahahah");
System.out.println();//只是換行 System.out.println("王二狗");
System.out.print("李小花");
System.out.print("白骨精");
System.out.println();
String name = "小鉆風";
int age = 100;
double score = 88.7;
System.out.printf("姓名:%s,年齡:%d 歲,分數:%.2f\n",name,age,score);//占位符,使用一個符號,占著這個地兒 System.out.println("main..over..");
}}
六、作業(yè)
1、"百錢買百雞"是我國古代的著名數學題。 題目描述:公雞5文錢1只,母雞3文錢1只,小雞3只1文錢,100文錢剛好買100只雞,怎么買?
2、求水仙花數。所謂水仙花數,是指一個三位數, 每個位上數字的立方和(百位數字的立方+十位數字的立方+個位數字的立方), 剛好是這個數字本身。 比如:153 1^3+5^3+3^3 ,剛好是153。所以153就是一個水仙花數。
3、打印2-100內所有的素數。 (素數,也叫質數,就是只能被1和本身整除的數,比如3,7,11,13等)
4、打印菱形
總結
以上是生活随笔為你收集整理的java 6 基础教程_Java小白入门教程(6)——循环语句的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: java jtextarea 滚动条_j
- 下一篇: unsafehelper java_Ja