Java基礎(chǔ)入門篇——For循環(huán)
一、for循環(huán)語句
1.在java中一般用在次數(shù)確定情況下。如果要進(jìn)行重復(fù)性指令執(zhí)行,可以用for循環(huán)?;菊Z法如下所示:
- for(初始化表達(dá)式;循環(huán)條件;操作表達(dá)式){
- c1:執(zhí)行語句
- ......
- }
上面這個(gè)語法語句中for關(guān)鍵字后面包括了三個(gè)內(nèi)容,初始化表達(dá)式、循環(huán)條件、操作表達(dá)式,它們用分號(hào)(;)分隔,在大括號(hào)里面有個(gè)執(zhí)行語句為循環(huán)體。這個(gè)for循環(huán)語句是怎么執(zhí)行的呢?
分4步走:
第一步:首先執(zhí)行的是初始化表達(dá)式;
第二步:執(zhí)行循環(huán)條件,看判斷條件滿不滿足,如果滿足條件,再執(zhí)行c1的語句,如果當(dāng)條件不滿足,就退出for循環(huán);
第三步:執(zhí)行c1的語句;
第四步:執(zhí)行操作表達(dá)式,然后重復(fù)執(zhí)行第二步;
2.使用for循環(huán)求1-10的整數(shù)和的值
代碼如下所示:
- int sum = 0;
- for(int i = 1; i <= 10; i++){
- sum += i;
- }
- System.out.println("1-10整數(shù)和的值為" + sum);
輸出的結(jié)果是:
- 1-10整數(shù)和的值為55
從上面代碼我們可以看出,定義一個(gè)int類型變量sum來保存1-10整數(shù)和的值,然后看for循環(huán),初始化表達(dá)式定義了一個(gè)int類型變量i為1,執(zhí)行循環(huán)條件,看滿不滿足這個(gè)條件,i的值為1,條件i<=10所以是滿足條件的,執(zhí)行sum+=i相當(dāng)于(sum=sum+i),再執(zhí)行i++,又回到這個(gè)循環(huán)條件,再去判斷滿不滿足這個(gè)條件,如果滿足條件就繼續(xù)執(zhí)行,直到不滿足條件就退出這個(gè)for循環(huán),打印1-10整數(shù)和的值為55。
二、for循環(huán)的嵌套
1.什么是for循環(huán)的嵌套呢?
循環(huán)語句中又出現(xiàn)循環(huán),我們就叫它for循環(huán)的嵌套。
例如:下面這個(gè)小案例來具體分析for循環(huán)的嵌套
- for (int i = 0 ; i < 2 ; i++ ){ //外層循環(huán)
- for (int j = 0; j < 2 ; j++ ){//內(nèi)層循環(huán)
- System.out.println("i的值為:" + i + ",j的值為:" + j);
- }
- }
輸出的結(jié)果是:
- i的值為:0,j的值為:0
- i的值為:0,j的值為:1
- i的值為:1,j的值為:0
- i的值為:1,j的值為:1
從上面代碼我們可以看到注釋外層循環(huán)和內(nèi)存循環(huán),首先看外層循環(huán)初始化表達(dá)式定義了一個(gè)int類型變量i的值為0,執(zhí)行循環(huán)條件,看滿不滿足這個(gè)條件,因?yàn)閕的值為0,循環(huán)條件是i<2,滿足這個(gè)條件。如果不滿足這個(gè)條件就退出for循環(huán)。因?yàn)檫@個(gè)是滿足條件的,所以執(zhí)行這個(gè)內(nèi)層循環(huán),同樣的我們看到初始化表達(dá)式定義了一個(gè)int類型變量j的值為0;執(zhí)行循環(huán)條件,看滿不滿足這個(gè)條件,因?yàn)閖的值為0,循環(huán)條件是j<2,滿足這個(gè)條件,然后輸出語句“i的值為:0,j的值為:0”,再執(zhí)行操作表達(dá)式的j++,這時(shí)j的值為1,執(zhí)行循環(huán)條件,j<2所以是滿足這個(gè)條件的,然后繼續(xù)輸出語句“i的值為:0,j的值為:1”,再執(zhí)行操作表達(dá)式j(luò)++,此時(shí) j的值為2,再回到循環(huán)條件,發(fā)現(xiàn)j<2不滿足這個(gè)條件就回到外層循環(huán),執(zhí)行i++,i的值為1,繼續(xù)執(zhí)行內(nèi)層循環(huán)。
2.for循環(huán)的特點(diǎn)
外層循環(huán)一次,內(nèi)層循環(huán)要完成遍歷。
3.使用for循環(huán)嵌套輸出九九乘法表
代碼如下所示:
- System.out.println("九九乘法表:");
- for(int i=1;i<=9;i++)
- {
- for(int j=1;j<=i;j++)
- {
- System.out.print(j+"*"+i+"="+j*i+"\t");
- }
- System.out.println();
- }
輸出的結(jié)果如下所示:
- 九九乘法表:
- 1*1=1
- 1*2=2 2*2=4
- 1*3=3 2*3=6 3*3=9
- 1*4=4 2*4=8 3*4=12 4*4=16
- 1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
- 1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
- 1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
- 1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
- 1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
從上面的代碼可以看出,聲明兩個(gè)變量分別是i和j,然后使用兩個(gè)for循環(huán)語句。外層循環(huán)來控制它的行數(shù),內(nèi)層循環(huán)來控制它的列數(shù)。
三、for each循環(huán)
1.for each一般用在遍歷數(shù)組和集合。
2.for each的語法語句格式:
- for(元素類型type 元素變量value : 遍歷對(duì)象obj) {
- 引用x的java語句;
- }
3.使用foreach遍歷集合的例子:
代碼如下所示:
- //創(chuàng)建集合對(duì)象
- Collection<String> c =new ArrayList<String>();
- //添加元素
- c.add("python");
- c.add("java");
- c.add("mysql");
- //foreach循環(huán)遍歷集合
- for(String s :c) {
- System.out.println(s);
- }
輸出的結(jié)果是:
- python
- java
- mysql
4.使用foreach遍歷數(shù)組的例子:
- //定義并初始化一個(gè)數(shù)組
- int arr[] = {8,5,2,0,6};
- System.out.println("foreach遍歷arr數(shù)組");
- for (int x : arr) {
- System.out.println(x); //逐個(gè)輸出數(shù)組元素的值
- }
輸出的結(jié)果是:
- foreach遍歷arr數(shù)組
- 8
- 5
- 2
- 0
- 6
四、總結(jié)
本文介紹了for循環(huán)語句、for循環(huán)嵌套語句、foreach循環(huán)。詳細(xì)講解了for循環(huán)語句通過這個(gè)語法語句和求1-10整數(shù)和的值的小案例來幫助大家理解這個(gè)for循環(huán)。for循環(huán)嵌套語句就是循環(huán)語句又出現(xiàn)循環(huán),通過for循環(huán)嵌套語句打印九九乘法表的例子來分析這個(gè)for循環(huán)嵌套的語句。foreach循環(huán)語句一般是用來遍歷數(shù)組和集合,通過foreach循環(huán)遍歷集合和數(shù)組了解一下foreach的用法。希望大家通過本文的學(xué)習(xí),能夠幫助到你!