int i = 0; 初始化值
while(i<10){ 循环判断
? 循环体 循环重复执行的代码
? 循环控制语句
}
class Demo01 {
public static void main(String[] args) {
int i = 0;
while(i < 10){
System.out.println("Hello World!" + i);
i++;
}
System.out.println("OVER!");
}
}
class Demo02 {
public static void main(String[] args) {
// 计算0--num累加的结果
int i = 0;
int sum = 0;
while(i <= 100){ // 表示累加到100
sum = sum + i;
// 控制i自增
i++;
}
System.out.println("sum = " + sum);
}
}
class Demo03 {
public static void main(String[] args) {
// 计算0--100奇数累加的结果
// 循环初始化
int i = 0;
// 记录结果
int sum = 0;
// 开启while循环
while(i <= 100){
// 执行累加
if(i % 2 != 0){
sum += i;
}
// 控制循环变化
i++;
}
System.out.println("sum = " + sum);
System.out.println("============");
// 循环初始化
int j = 1;
// 记录结果
sum = 0;
// 开启循环,到100结束
while(j <= 100){
// 执行累加
sum += j;
// 控制循环变化
j += 2;
}
System.out.println("sum = " + sum);
}
}
class Demo04 {
public static void main(String[] args) {
/*
输出所有的水仙花数字
1、确定初始化值
100
2、开启循环,确定结束条件
999
3、计算得出水仙花数并输出
获取数字的各位字面值
计算字面值的立方和
比较立方和是否等于数字本身
*/
int i = 100;
while(i <= 999){
// 获取个位十位百位数字 123
int ge = i % 10;
int shi = i / 10 % 10;
int bai = i / 100;
// 计算立方和
int sum = ge*ge*ge + shi*shi*shi +bai*bai*bai;
// 比较、判断
if(sum == i){
System.out.println("水仙花数:" + i);
}
// 控制循环判断变化
i++;
}
}
}
class Demo05 {
public static void main(String[] args) {
/*
7、输出小写的 a-z 以及大写的Z—A
97--122 65--90
8、求出1-1/2+1/3-1/4…..1/100的和
9、输出20-80之间能被3整除的整数,每5个一行
10、打印出1000-2000年中所有的闰年,并以每行四个数的形式输出
*/
int i = 97;
while(i <= 122){
System.out.println((char)i);
i++;
}
System.out.println("Hello World!");
int j = 90;
while(j >= 65){
System.out.println((char)j);
j--;
}
}
}
class Demo06 {
public static void main(String[] args) {
// 9、输出20-80之间能被3整除的整数,每5个一行
int i = 20;
// 定义计数器
int count = 0;
while(i <= 80){
// 判断i是否能被3整除
if(i % 3 == 0){
System.out.print(i + "\t");
// 没找到一个符合条件的计数器就加1
count++;
// 怎么确定一行就是5个了---看计数器是不是5的倍数
if(count % 5 == 0){
System.out.print("\n");
}
}
i++;
}
}
}
class Demo09 {
public static void main(String[] args) {
/*
猴子摘了很多桃子
每天吃桃子半数,感觉不过瘾有多吃了一个
到第十天的时候发现还剩下一个
问:猴子第一天摘了多少桃子
*/
int i = 10;
int count = 1;
while(i > 0){
count = (count+1)*2;
i--;
}
System.out.println("猴子第一天摘了"+count+"桃子");
}
}
class Demo07 {
public static void main(String[] args) {
/*
while(true){
System.out.println("Hello World!");
}
*/
int i = 0;
while(i >= 0){
System.out.println("Hello World!");
i++;
}
}
}
class Demo07 {
public static void main(String[] args) {
/*
while(true){
System.out.println("Hello World!");
}
*/
int i = 0;
while(i > 0){
System.out.println("Hello World!");
i++;
}
System.out.println("OVER!");
}
}
class Demo08 {
public static void main(String[] args) {
int i = 0;
// 先执行do后面的代码----这部分代码和while循环后面的代码书写方式、意义是相同的
do{
// 循环重复执行的代码
System.out.println("Hello World!");
// 条件控制语句
i++;
// 条件判断
}while(i > 0);
System.out.println("OVER!");
}
}
for(初始化语句; 循环条件判断语句; 训话条件控制语句){
? 循环体
}
class Demo10 {
public static void main(String[] args) {
// 使用for循环输出10遍HelloWorld
for(int i = 0;i < 10;i++){
System.out.println("Hello World!" + i);
}
System.out.println("OVER!");
}
}
for(int i = 0;i < 5;i++){
System.out.println("Hello World!" + i);
}
System.out.println("OVER!");
执行过程
第一次
初始化变量int i = 0,判断i < 5,判断结果true,执行for循环中的循环体
第二次
执行循环条件控制代码i++,i变成1,判断i < 5,判断结果true,执行for循环中的循环体
第三次
执行循环条件控制代码i++,i变成2,判断i < 5,判断结果true,执行for循环中的循环体
第四次
执行循环条件控制代码i++,i变成3,判断i < 5,判断结果true,执行for循环中的循环体
第五次
执行循环条件控制代码i++,i变成4,判断i < 5,判断结果true,执行for循环中的循环体
第六次
执行循环条件控制代码i++,i变成5,判断i < 5,判断结果false,不执行for循环中的循环体,循环结束
class Demo11 {
public static void main(String[] args) {
// 计算0--100累加的结果
int sum = 0;
for(int i = 0;i<=100;i++){
sum += i;
}
System.out.println("Hello World!" + sum);
// 计算0--100奇数累加的结果
sum = 0;
for(int i = 0;i<=100;i++){
// 找出奇数进行累加
if(i % 2 != 0){
sum += i;
}
}
System.out.println("Hello World!" + sum);
sum = 0;
for(int i = 1;i <= 100;i += 2){
// 找出奇数进行累加
sum += i;
}
System.out.println("Hello World!" + sum);
}
}
class Demo12 {
public static void main(String[] args) {
// 输出1000-2000年之间的闰年,4个一行
int count = 0;
for(int i = 1000;i <= 2000;i++){
// 计算闰年
/*
普通闰年:公历年份是4的倍数的,且不是100的倍数,为普通闰年。(如2004、2020年就是闰年);
世纪闰年:公历年份是整百数的,必须是400的倍数才是世纪闰年(如1900年不是世纪闰年,2000年是世纪闰年);
*/
if(((i%4==0) && (i%100!=0)) || (i%400==0)){
System.out.print(i + "\t");
// 计数器加一
count++;
// 判断是不是到了4
if(count % 4 == 0){
System.out.println();
}
}
}
System.out.println("Hello World!");
}
}
class Demo13 {
public static void main(String[] args) {
// for循环输出水仙花数
for(int i = 100;i < 1000;i++){
// 计算水仙花数字
// 获取个位十位百位
int ge = i % 10;
int shi = i / 10 % 10;
int bai = i / 100;
int sum = ge*ge*ge + shi*shi*shi + bai*bai*bai;
// 判断sum和i是否相等
if(sum == i){
System.out.println(i);
}
}
System.out.println("Hello World!");
}
}
import java.util.Scanner;
class Demo14 {
public static void main(String[] args) {
// 键盘录入一个数字,计算它的阶乘
/*
1、导入Scanner
2、创建Scanner对象
3、提示输入一个数字
4、获取输入的数字
5、编写循环,从1开始,到num结束
6、在循环中不断计算乘积
7、循环结束后输出结果
*/
Scanner in = new Scanner(System.in);
System.out.println("你想计算到几的阶乘?");
int num = in.nextInt();
int mul = 1;
// 开启循环
for(int i = 1;i <= num;i++){
mul *= i;
}
System.out.println("num阶乘的结果是:" + mul);
}
}
import java.util.Scanner;
class Demo15 {
public static void main(String[] args) {
// 输入五个同学的分数,计算平均分
/*
1、导入Scanner
2、创建Scanner对象
3、开启循环,执行5次
a、提示输入第一个同学的分数
b、获取第一个同学的分数
c、累加这个分数
4、在循环外计算平均分
5、输出平均分数
*/
Scanner in = new Scanner(System.in);
// 记录总分数
int scores = 0;
for(int i = 0;i < 5;i++){
System.out.println("请输入第" + (i+1) + "个同学的分数:");
int score = in.nextInt();
scores += score;
}
// 计算平均分
System.out.println("五个同学的平均分数:" + (scores/5.0));
}
}
终止循环的执行
class Demo16 {
public static void main(String[] args) {
// break的使用
int i = 0;
while(i <= 100){
System.out.println("Hello World!" + i);
// 在执行到i==66的时候停止运行
if(i == 66){
// 使用break终止循环的执行
break;
}
i++;
}
System.out.println("Hello World!");
}
}
class Demo17 {
public static void main(String[] args) {
// continue
int i = 1;
while(i <= 20){
// 输出所有的奇数
if(i % 2 != 0){
System.out.println(i);
}
i++;
}
System.out.println("Hello World!001");
i = 1;
while(i <= 20){
System.out.println(i);
i += 2;
}
System.out.println("Hello World!002");
i = 0;
while(i <= 20){
// 判断:如果是偶数,下面的内容就跳过
i++;
if(i % 2 == 0){
continue;
}
System.out.println(i);
}
System.out.println("Hello World!003");
}
}
原文:https://www.cnblogs.com/xkzzZ/p/14467342.html