1、 while循环
while(循环条件){ (特点为:先判断再执行)
循环操作
}
例题: 计算1+2+3+...+100
int i = 1;
int sum = 0;
while(i<=100){
sum +=i;
i++;
}
2、 do while循环
do{ (特点为:先执行再判断)
循环操作
}while(循环条件)
例题: 计算1+2+3+...+100
int i =1;
int sum = 0;
do{
sum += i;
i++;
}while(i<=100);
System.out.println("sum="+sum);
3、 for 循环 (特点:先判断再执行)
for(表达式1(参数初始化);表达式2(条件判断);表达式3(更新循环变量)){
循环操作;
}
例题:计算0~100中不是3的倍数的所有数的和,和大于2000输出结果
int sum = 0;
for(int i=0;i<100;i++){
if(i%3 != 0){
sum += i;
if(sum<2000){
}else{
break;
}
}
}
System.out.println(sum);
4、for each循环 (遍历数组)
for(声明循环变量:数组的名字){
}
5、for循环跟while循环的选用
循环次数确定的情况下选用for循环,循环次数不确定则选用while、do while循环。
6、综合应用
例题:模拟取款机
Scanner input = new Scanner(System.in);
for(int i=1;i<=3;i++){
System.out.println("请输入密码:");
int password = input.nextInt();
if(password==111111){
while(true){
System.out.println("请输入取款金额:");
int amount = input.nextInt();
if(amount>=0 && amount<=1000 && amount%100==0){
System.out.println("您的取款金额为:"+amount+"元");
System.out.println("交易完成,请取卡");
return;
}else{
System.out.println("您输入的金额不合法");
}
}
}else{
if(i<3){
System.out.println("密码错误请重新输入:"+"您还能输入"+(3-i)+"次");
}else{
System.out.println("密码错误,请取卡");
}