1. 程式人生 > >Java的迴圈語句

Java的迴圈語句

一、while 迴圈

while(迴圈條件){
  迴圈操作語句
 }

* 迴圈3要素: 變數的初值、變數的判斷、變數的更新
* 缺少迴圈變數的更新,迴圈將一直進行下去

public class WhlieDemo {

	public static void main(String[] args) {
		int i = 1;   		//迴圈變數的初值
		while(i <= 10){		//迴圈的條件判斷
			System.out.printf("第%d次\n",i);
			i++;			//迴圈變數的更新
		}
	}
}

  

//
使用迴圈計算1-100的累加和 public class SumDemo { public static void main(String[] args) { int i = 1; int sum = 0; while(i <= 100){ sum += i; i++; } System.out.print(sum); } }
View Code
//計算輸入的整型數字中每位數字之和
public class SumDemo {

    
public static void main(String[] args) { //得到要計算的整型數字 Scanner input = new Scanner(System.in); System.out.print("請輸入一個整型數字:"); //宣告相關變數 int sum = 0; int num = input.nextInt(); //迴圈計算累加和 while(num > 0){ sum += num % 10; //取個位加到sum num /= 10; //
更新num 去掉個位 } //列印結果 System.out.print("各位數字之和:"+sum); input.close(); } }
View Code
//使用迴圈實現三次密碼輸入錯誤退出系統
public class SumDemo {

    public static void main(String[] args) {
        final String PASSWORD = "123456";            //定義並初始化密碼
        int i = 0;    //控制迴圈次數變數
        Scanner input = new Scanner(System.in);
        while(i < 3){
            i++;
            System.out.print("請輸入密碼:");
            String password = input.nextLine();
            if(PASSWORD.equals(password)){       //輸入正確
                System.out.println("密碼輸入正確,歡迎登陸……");     
                break;
            }else{if(i == 3){                //錯誤三次
                System.out.println("輸入三次自動退出");
                System.exit(0);
            }else{                 //3次之前輸入錯誤
                System.out.println("輸入錯誤你還有"+(3-i)+"次機會");
            }    
            }        
        }
        input.close();    
    }
}
View Code
//某寶雙十一2015年的交易額為800億,每年遞增25%
//問:按此速度哪年交易額達到2000億?
public class SumDemo {

    public static void main(String[] args) {
        int year = 2015;       //年份
        double money = 800;    //交易額
        while(money <= 2000){
            money *= 1.25;
            year++;
        }
        System.out.printf("%d年,交易額達到2000億,交易額為%.2f億元",year,money);
    }
            
}
View Code

二、do-while 迴圈

do{
 迴圈語句
}while(迴圈條件);

先執行再判斷  ,至少執行一次

//選擇登陸
public class WhlieDemo{
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        String answer = "y";
        do{
            System.out.println("是否繼續? (y/n)");
            answer = input.nextLine();
        }while(!"y".equalsIgnoreCase(answer));  //如果不是y就 重新輸入     equalsIgnoreCase為忽略大小寫
        System.out.println("登陸中……");
        input.close();
    }        
}
View Code

三、for 迴圈

基本語法
for(表示式1;表示式2;表示式3)
{
語句:
}
表示式1 為迴圈變數賦初值 可省略
表示式2 迴圈條件 可省略
表示式3 更新迴圈變數 可省略
分號, 用於分隔三個表示式 不可省略 for(;;) 是死迴圈

public class ForDemo {

    public static void main(String[] args) {
        for(int i = 0; i < 5; i++)
        {
            System.out.println("i");
        }
    }
}
//求遊戲工會玩家的平均戰鬥力
//錄入至少3位玩家的戰力
public class ForDemo{
    public static void main(String[] args){
        Scanner input = new Scanner(System.in);
        int fight;         //戰鬥力
        double sum = 0;    //戰力和
        System.out.print("請輸入玩家的數量:");
        int player = input.nextInt();     //輸入玩家數量
        for(int i = 1; i <= player; i++)
        {
            System.out.printf("請輸入第%d個玩家的戰鬥力:",i);
            fight = input.nextInt();
            sum += fight;
        }
        System.out.printf("%d個玩家的平均戰鬥力為:%.2f",player,(sum / player));
        input.close();
    }
}
View Code
//列印月曆
public class ForDemo{
    public static void main(String[] args){
        //1.輸出星期
        System.out.println("星期一\t星期二\t星期三\t星期四\t星期五\t星期六\t星期天");     
        //2.輸出日期
        System.out.print("\t");
        for(int i = 1; i <= 31; i++)
        {   
            System.out.print(i);  //列印日期
            
            if((i + 1) % 7 == 0){
                System.out.print("\n");
            }else{
                System.out.print("\t");
            }            
        }        
    }
}
View Code

四、break 、continue

使用場合
break可用於switch結構和迴圈結構中
continue只能用於迴圈結構中

作用(迴圈結構中)
break語句終止某個迴圈,程式跳轉到迴圈塊外的下一條語句。
continue跳出本次迴圈,進入下一次迴圈