1.for循环:
for循环语法
for(表达式1;表达式2;表达式3){
循环体4
}
表达式1:初始化变量 只执行一次!
表达式2:循环条件 满足条件进入循环体4
表达式3:迭代变量
如果循环体 中只有一条语句! 则可以省略 大括号! 不建议!
什么时候使用for循环?
循环次数固定
continue :代表 结束本次循环,继续下次循环! 并没有结束循环!
break: 直接是结束当前循环体!
01.三个表达式 都可以 省略
for (;;) {
System.out.println("大家辛苦了");
}
02.省略了 循环条件
for (int i = 0;; i++) {
System.out.println("大家辛苦了" + i);
}
03.省略了 迭代变量
for (int i = 0; i <= 100;) {
System.out.println("大家辛苦了" + i);
}
2.经典案例:(数据类型转换,计算百分比,保留两位小数)
01.
public static void main(String[] args) {
/**
* 需求:
* 01.让用户循环输入5名学员的年龄
* 02.求出年龄大于25岁的百分比
* 03.保留两位有效数字
*/
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
int sum = 0;
int age = 0;
double a = 0;
for(int i =1;i<=5;i++){
System.out.println("请输入第"+i+"名学员的年龄:");
age = input.nextInt();
if(age>=25){
sum++;
}
}
a = sum/5.0;
DecimalFormat df = new DecimalFormat("0.00");
String b = df.format(a);//转换成保留两位小数
System.out.println("年龄在25岁以上的学员比例是:"+b);
}
}
02.
public static void main(String[] args) {
/**
* 需求:
* 01.让用户循环输入5名学员的年龄
* 02.求出年龄大于25岁的百分比
* 03.保留两位有效数字
*/
Scanner input = new Scanner(System.in);
int num = 0; // 记录年龄大于25岁的人数
for (int i = 1; i <= 5; i++) {
System.out.println("请输入第" + i + "个学员的年龄:");
int age = input.nextInt();
if (age >= 25) {
num++;
}
}
System.out.println("25岁的百分比是:" + (num / 5.0 * 100) + "%");
}
}
03.
public static void main(String[] args) {
Scanner input = new Scanner(System.in);
System.out.println("请您输入一个数字:");
double num = input.nextDouble(); // 2.333333
// 想把用户输入的数字 保留两位有效数字
DecimalFormat df = new DecimalFormat("0.00");
String result = df.format(num);
System.out.println("保留两位有效数字:" + result);
// 把String转换成 数值类型
num = Double.parseDouble(result);
System.out.println(num + 5);
}
}