Java while 循环
Posted 滴水穿石不是靠力,而是因为不舍昼夜。
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java while 循环相关的知识,希望对你有一定的参考价值。
基本语法
语法格式:
①初始化部分
while(②循环条件部分){
③循环体部分;
④迭代部分;
执行过程:①-②-③-④-②-③-④-②-③-④-...-②
图示:
说明:
- while(循环条件)中循环条件必须是boolean类型。
- 注意不要忘记声明④迭代部分。否则,循环将不能结束,变成死循环。
- for循环和while循环可以相互转换。二者没有性能上的差别。实际开发中,根据具体结构的情况,选择哪个格式更合适、美观。
- for循环与while循环的区别:初始化条件部分的作用域不同。
应用举例
练习1、输出5行 2023 要加油吖!
public static void printLine() int n = 5; while (n > 0) System.out.println("2023 加油呀!"); // n--; --n;
练习2、遍历1-50的偶数,并计算所有偶数的和、偶数的个数(累加的思想)
/** * 偶数和偶数和 */ public static void doubleNumSum() int n = 50; int sum = 0, cnt = 0; while (n > 0) if (n % 2 == 0) sum += n; cnt++; n--; System.out.println("0~50 一共有 " + cnt + " 个偶数,它们的和是 " + sum);
练习3、猜数字游戏:随机生成一个100以内的数,猜这个随机数是多少?从键盘输入数,如果大了,提示大了;如果小了,提示小了;如果对了,就不再猜了,并统计一共猜了多少次。
提示:生成一个[a,b] 范围的随机数的方式:(int)(Math.random() * (b - a + 1) + a)
/** * 猜数字游戏 */ public static void guseNum() Scanner scanner = new Scanner(System.in); //获取一个随机数 int random = (int) (Math.random() * 100) + 1; System.out.println("猜一下,看你几次可以猜到!!!"); int cnt = 0; while (true) System.out.println("请输入你的答案:"); int pwd = scanner.nextInt(); if (pwd > random) System.out.println(pwd + "? 大了..."); cnt++; else if (pwd < random) System.out.println(pwd + "? 小了..."); cnt++; else if (pwd == random) cnt++; System.out.println(pwd + " , 恭喜你,答对了,一共猜了 " + cnt + " 次,还不错!!"); break; //return;
练习4、 世界最高山峰是珠穆朗玛峰,它的高度是8848.86米,假如我有一张足够大的纸,它的厚度是0.1毫米。请问,我折叠多少次,可以折成珠穆朗玛峰的高度?
public static void Zmlmf() int l = 884886, cnt = 0; double paper = 0.1;//单位:毫米 while (l > paper) cnt++; paper *= 2; System.out.println("需要折叠:" + cnt + "次"); System.out.println("折纸的高度为" + paper / 1000 + "米,超过了珠峰的高度");
练习5、从键盘输入整数,输入0结束,统计输入的正数、负数的个数
public static void checkNum() Scanner scanner = new Scanner(System.in); int cnt_1 = 0, cnt_2 = 0; while (true) int num = scanner.nextInt(); if (num > 0) cnt_1++; else if (num < 0) cnt_2++; else if (num == 0) System.out.println("正数 " + cnt_1 + "\\t 负数 " + cnt_2); return;
以上是关于Java while 循环的主要内容,如果未能解决你的问题,请参考以下文章
Java 循环结构 - for, while 及 do...while