三、循环结构
1.while循环
while(循环条件){ 循环语句; }
循环条件为true时, 则执行循环语句, 否则结束循环。
示例 打印1-20的数字
int num = 1; while (num <= 20) { System.out.println(num); num++; }
注意:当while的循环语句只有一条时,while 下面的语句可以不写 { },建议还是加上 { }。
2.break
break 是让循环提前结束。
示例:找100-200中第一个3的倍数
int num = 100; while (num <= 200) { if (num % 3 == 0) { System.out.println("找到了 3 的倍数, 为:" + num); break; } num++; }
3.continue
continue 的功能是跳过这次循环, 立即进入下次循环.
示例找到100-200中所有三的倍数
int num = 100; while (num <= 200) { if (num % 3 != 0) { num++; continue; } System.out.println("找到了 3 的倍数, 为:" + num); num++; }
4.for循环
for(表达式1;表达式2;表达式3){ 表达式4; }
表达式1:用于初始化循环变量初始值设置,在循环最开始时执行,且只执行一次,表达式2循环条件,满则循环继续,否则循环结束,表达式3 循环变量更新方式。
示例 打印1-100的和
int sum = 0; for (int i = 1; i <= 100; i++) { sum += i; } System.out.println("sum = " + sum);
5.do while循环
do{ 循环语句; }while(循环条件);
先执行循环语句, 再判定循环条件,循环条件成立则继续执行,否则循环结束
示例 打印1-10
int num = 1; do { System.out.println(num); num++; } while (num <= 10);
注意:do while 循环最后的分号不要忘记。
四、输入输出
1.输出到控制台
System.out.println(msg);// 输出一个字符串, 带换行 System.out.print(msg);//输出一个字符串, 不带换行 System.out.printf(format, msg); // 格式化输出,printf 的格式化输出方式和 C 语言的 printf 是基本一致的
示例
System.out.println("hello world"); int x=10; System.out.printf("x=%d\n",x);
格式化字符串
2.从键盘输入
使用 Scanner 读取字符串/整数/浮点数
import java.util.Scanner; // 需要导入 util 包 Scanner sc = new Scanner(System.in); System.out.println("请输入你的姓名:"); String name = sc.nextLine();//输入字符串,也可以用next,但若字符串中有空格,使用next则只打印空格前的的字符串 System.out.println(name);
Scanner sc=new Scanner(System.in); String name = sc.next(); System.out.println(name);
Scanner sc = new Scanner(System.in); System.out.println("请输入你的年龄:"); int age = sc.nextInt(); System.out.println(age);
Scanner sc=new Scanner(System.in); System.out.println("请输入工资"); float salary =sc.nextFloat(); System.out.println(salary);
import java.util.Scanner; // 需要导入 util 包 Scanner sc = new Scanner(System.in); System.out.println("请输入你的姓名:"); String name = sc.nextLine(); System.out.println("请输入你的年龄:"); int age = sc.nextInt(); System.out.println("请输入你的工资:"); float salary = sc.nextFloat(); System.out.println("你的信息如下:"); System.out.println("姓名: "+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary); sc.close(); // 注意, 要记得调用关闭方法
循环输入n个整数并求和读取平均值
Scanner sc = new Scanner(System.in); int sum = 0; int num = 0; //判断是否有整数 while (sc.hasNextInt()) { int tmp = sc.nextInt(); sum += tmp; num++; } S System.out.println("sum = " + sum); System.out.println("avg = " + sum / num); sc.close();
注意:当循环输入多个数据的时候, 使用 ctrl + z 来结束输入 (Windows 上使用 ctrl + z(cmd),ctrl(IDEA), Linux / Mac 上使用 ctrl+ d)。