关于for
    循环语句:for循环,while循环,do...while循环。
    
    for循环格式:
        for(初始化语句;判断条件语句;控制条件语句) {
            循环体语句;
        }
        
        执行流程:
            A:执行初始化语句
            B:执行判断条件语句,看其返回值是true还是false
                如果是true,就继续执行
                如果是false,就结束循环
            C:执行循环体语句;
            D:执行控制条件语句
            E:回到B继续。
            
    注意事项:
        A:判断条件语句无论简单还是复杂结果是boolean类型。
        B:循环体语句如果是一条语句,大括号可以省略;如果是多条语句,大括号不能省略。建议永远不要省略。
        C:一般来说:有左大括号就没有分号,有分号就没有左大括号

例子for求和

 class ForDemo3 {
public static void main(String[] args) {
//原始做法
System.out.println(1+2+3+4+5+6+7+8+9+10); //定义第一个加数
int sum = 0; for(int x=1; x<=10; x++) {
//这里的x其实是第二个加数
sum = sum + x;
/*
0 + 1 = 1
1 + 2 = 3
3 + 3 = 6
...
*/ //sum += x;
} System.out.println("sum:"+sum);
}
}

练习2
        请在控制台输出满足如下条件的五位数
        个位等于万位
        十位等于千位
        个位+十位+千位+万位=百位
        
    分析:
        A:五位数就告诉了我们范围。
        B:分解每一个五位数的个,十,百,千,万位上的数据
        C:按照要求进行判断即可

 class ForDemo7 {
public static void main(String[] args) {
//五位数就告诉了我们范围。
for(int x=10000; x<100000; x++) {
//分解每一个五位数的个,十,百,千,万位上的数据
int ge = x%10;
int shi = x/10%10;
int bai = x/10/10%10;
int qian = x/10/10/10%10;
int wan = x/10/10/10/10%10; //按照要求进行判断即可
if((ge==wan) && (shi==qian) && (ge+shi+qian+wan==bai)) {
System.out.println(x);
}
}
}
}

例子3 水仙花

 /*
需求:统计”水仙花数”共有多少个 分析:
A:首先必须知道什么是水仙花数
所谓的水仙花数是指一个三位数,其各位数字的立方和等于该数本身。
举例:153就是一个水仙花数。
153 = 1*1*1 + 5*5*5 + 3*3*3 = 1 + 125 + 27 = 153
B:定义统计变量,初始化值是0
C:三位数告诉了我们范围,用for循环就可以搞定
D:获取每一个三位数的个,十,百的数据
E:按照要求进行判断
F:如果满足要求就计数。
*/
class ForDemo8 {
public static void main(String[] args) {
//定义统计变量,初始化值是0
int count = 0; //三位数告诉了我们范围,用for循环就可以搞定
for(int x=100; x<1000; x++) {
//获取每一个三位数的个,十,百的数据
int ge = x%10;
int shi = x/10%10;
int bai = x/10/10%10; //按照要求进行判断
if(x == (ge*ge*ge+shi*shi*shi+bai*bai*bai)) {
//如果满足要求就计数。
count++;
}
} System.out.println("水仙花数共有"+count+"个");
}
}

关于while

while循环的基本格式:
        while(判断条件语句) {
            循环体语句;
        }
        扩展格式:
        初始化语句;
        while(判断条件语句) {
             循环体语句;
             控制条件语句;
        }
        
        通过这个格式,我们就可以看到其实和for循环是差不多的。
        
        for(初始化语句;判断条件语句;控制条件语句) {
            循环体语句;
        }

关于do。。。。while

do...while循环的基本格式:
        do {
            循环体语句;
        }while(判断条件语句);
        
        扩展格式;
        初始化语句;
        do {
            循环体语句;
            控制条件语句;
        }while(判断条件语句);

注意死循环:
        A:一定要注意控制条件语句控制的那个变量的问题,不要弄丢了,否则就容易死循环。
        B:两种最简单的死循环格式
            while(true){...}
            for(;;){...}

关于循环嵌套

例子1

 /*
需求:请输出一个4行5列的星星(*)图案。
结果:
*****
*****
*****
***** 循环嵌套:就是循环语句的循环体本身是一个循环语句。 通过结果我们知道这样的一个结论:
外循环控制行数
内循环控制列数
*/
class ForForDemo {
public static void main(String[] args) {
//原始做法
System.out.println("*****");
System.out.println("*****");
System.out.println("*****");
System.out.println("*****");
System.out.println("-------------"); //虽然可以完成需求,但是不是很好
//如果是多行多列就会比较麻烦
//所以我们准备改进
//如何改进呢?
//我先考虑如何实现一行*的问题
//System.out.println("*****");
//我们要想的是如何实现一次输出一颗*的问题
//System.out.println("*");
//System.out.println("*");
//现在虽然可以一次一颗*,但是却换行了,我要求不能换行,怎么办呢?
//输出语句的另一种格式:System.out.print(); 这个是不带换行的
//System.out.print("*");
//System.out.print("*");
//System.out.print("*");
//System.out.print("*");
//System.out.print("*");
//如果我要在一行上打出多颗*,比较麻烦,而代码是重复的,所以我决定用循环改进
for(int x=0; x<5; x++) {
System.out.print("*");
}
//我们可以通过空的输出语句实现换行:System.out.println();
System.out.println(); //既然我可以打出一行,我就可以打出第二行
for(int x=0; x<5; x++) {
System.out.print("*");
}
//我们可以通过空的输出语句实现换行:System.out.println();
System.out.println(); //同理打出第三行,第四行
for(int x=0; x<5; x++) {
System.out.print("*");
}
//我们可以通过空的输出语句实现换行:System.out.println();
System.out.println(); //既然我可以打出一行,我就可以打出第二行
for(int x=0; x<5; x++) {
System.out.print("*");
}
//我们可以通过空的输出语句实现换行:System.out.println();
System.out.println();
System.out.println("-----------------");
//同样的代码出现了4次,说明我们程序写的不好,用循环改进
for(int y=0; y<4; y++) {
for(int x=0; x<5; x++) {
System.out.print("*");
}
//我们可以通过空的输出语句实现换行:System.out.println();
System.out.println();
}
}
}

例子2 99乘法表

 class ForForDemo3 {
public static void main(String[] args) {
for(int x=0; x<9; x++) {
for(int y=0; y<=x; y++) {
System.out.print("*");
}
System.out.println();
}
System.out.println("--------------");
//为了使用数据,我们从1开始
for(int x=1; x<=9; x++) {
for(int y=1; y<=x; y++) {
System.out.print(y+"*"+x+"="+y*x+"\t");
}
System.out.println();
}
}
}

关于跳转语句

控制跳转语句:
        break:中断
        continue:继续  跳出一次循环,进入下一次的执行
        return:返回   其实它的作用不是结束循环的,而是结束方法的
    break:中断的意思
    使用场景:
        A:switch语句中
        B:循环语句中。
            (循环语句中加入了if判断的情况)
        注意:离开上面的两个场景,无意义。
        
    如何使用呢?
        A:跳出单层循环
        B:跳出多层循环
            要想实现这个效果,就必须知道一个东西。带标签的语句。
            格式:
                标签名: 语句
例子1

 class ContinueDemo {
public static void main(String[] args) {
for(int x=0; x<10; x++) {
if(x == 3) {
//break;
continue;
} System.out.println(x);
}
}
}

例子2

 class ReturnDemo {
public static void main(String[] args) {
for(int x=0; x<10; x++) {
if(x == 2) {
System.out.println("退出");
//break;
//continue;
return;
} System.out.println(x);
} System.out.println("over");
}
}

java笔记10之循环的更多相关文章

  1. Java笔记3-for,switch循环,格式化输出,随机数

    大纲:一.分支结构 if switch二.循环 for while do while break continue三.格式化输出 [printf] int score = 100; String na ...

  2. Java笔记4-do while循环,break,修饰符,方法的调用

    do while循环语法:do{ //循环体}while(条件表达式); 注:它是先执行循环体,后再判断的循环结构. 如:int i = 0;do{ System.out.println(" ...

  3. Java笔记10:Struts2简单Demo

    1 下载struts-2.3.24.1-all.zip并解压缩,位置任意,比如我的位置是D:\Download\Java\struts-2.3.24.1 解压缩D:\Download\Java\str ...

  4. Thinking in Java——笔记(10)

    Inner Classes It allows you to group classes that logically belong together and to control the visib ...

  5. Java笔记——循环语句

    Java笔记--循环语句     1. while语句 规律: 1. 首先计算表达式的值. 2. 若表达式为真,则执行循环语法,直至表达式为假,循环结束.   while(表达式) 语句; 例如: i ...

  6. Java学习笔记13---一个循环程序的设计范例

    package welcome; import java.util.Scanner; /* * 一个循环程序的设计范例 * 首先编写仅执行一次的程序(当无循环时) * 循环的设计步骤: * 1.确定程 ...

  7. JAVA自学笔记10

    JAVA自学笔记10 1.形式参数与返回值 1)类名作为形式参数(基本类型.引用类型) 作形参必须是类的对象 2)抽象类名作形参 需要该抽象类的子类对象,通过多态实现 3)接口名为形参 需要的是该接口 ...

  8. 048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例——阶乘的累加和

    048 01 Android 零基础入门 01 Java基础语法 05 Java流程控制之循环结构 10 案例--阶乘的累加和 本文知识点:通过案例练习嵌套循环应用 案例练习--阶乘的累加和 案例题目 ...

  9. java笔记整理

    Java 笔记整理 包含内容     Unix Java 基础, 数据库(Oracle jdbc Hibernate pl/sql), web, JSP, Struts, Ajax Spring, E ...

随机推荐

  1. rest-简介

    一说到REST,我想大家的第一反应就是“啊,就是那种前后台通信方式.”但是在要求详细讲述它所提出的各个约束,以及如何开始搭建REST服务时,却很少有人能够清晰地说出它到底是什么,需要遵守什么样的准则. ...

  2. 【转】Java学习之Iterator(迭代器)的一般用法 (转)

    [转]Java学习之Iterator(迭代器)的一般用法 (转) 迭代器(Iterator) 迭代器是一种设计模式,它是一个对象,它可以遍历并选择序列中的对象,而开发人员不需要了解该序列的底层结构.迭 ...

  3. WMI使用集锦

    转载:http://singlepine.cnblogs.com/articles/299457.html 1.WMI简介 WMI是英文Windows Management Instrumentati ...

  4. sql plus 和 pl/sql无法连接远程oracle数据库

    前言:安装完oracle客户端后,可能会出现sql plus 和 pl/sql无法连接远程oracle数据库的情况,可能是以下原因: 针对sql plus连接不上: 1 可能原因:之前安装过oracl ...

  5. iOS子线程操作UI问题检查

    iOS开发中,因为大部分函数都不是线程安全的,所以UI子线程中操作UI是非常危险的事,但是有时候因为开发者经验不足,不知道子线程中不能UI,或者知道但是写代码的时候没注意,或者不知道那些函数操作UI了 ...

  6. 苹果新政,禁止开发者在App中加入检查更新功能

    今天妥妥的被拒了,苹果更新了新政策,不能在应用中出现检测更新的功能.AppStore会自动提醒用户更新. 去掉更新按钮,之后再尝试下看能通过不能

  7. 泛型,迭代器,LinkedList<E>

    1 <e>里面只能填类,不能用基本数据类型,不过integer 这样的的也行 2在模板类(泛型类中)class demo<e>由于不知道e是那个,所有通常都是重写大家都有的to ...

  8. Eclipse 将Java项目转为Dynamic web project

    1.打开项目根目次下的.project 在<buildSpec>节点下是否存在 <buildCommand> <name>org.eclipse.wst.commo ...

  9. C# web访问mysql数据库-整理归纳总结

    基本对比 使用方式 使用场合 优缺点 是否需要安装 需要的dll网址 引用方式 程序内引用 程序初期确定使用MySql,前期添加引用 大多数情况下使用在类文件内,多数使用于aspx,ashx等带有后置 ...

  10. jQuery .Ajax Error Handling Function

    $(function() { $.ajaxSetup({ error: function(jqXHR, exception) { if (jqXHR.status === 0) { alert('No ...