java的循环

我们举一个例子,编写一个小代码,来实现java代码1到100的求和?

  1+2+3+……+100=?

package com.student.exam;

/***计算1到100的和*/public class Summation {

    public static void main(String[] args) {
        int sum = 0; //声明变量sum存放计算的和,赋初值为0        for(int i=1;i<=100;i++)
            sum +=i;//等价于语句sum=sum+score
        System.out.println("sum="+sum);
    }

}

 运行结果:sum=5050

 for循环适合循环次数固定的情况。对于循环次数不固定的,比如数组的循环和集合的遍历,可以用foreach循环。foreach循环不需要知道循环的次数,这个以后讲解。

换一种加法用java实现1到100的和

(1+100)+(2+99)+……(50+51)=?

 1 package com.student.exam;
 2 /**
 3  * 使用for循环实现1到100的和
 4  * 两头相加进行计算
 5  * (1+100)+(2+99)+(3+98)+... ...+ (50+51)
 6  */
 7 public class  Summation2{
 8
 9     public static void main(String[] args) {
10         int sum = 0;
11         for(int i=1,j=100;i<j;i++,j--){
12             sum+=i+j;
13         }
14         System.out.println("sum= "+sum);
15     }
16
17 }

下面我们来实现计算学生成绩的for循环代码:
假定给出一个学生的5门功课的成绩,要求输出平均值

 1 package com.student.exam;
 2 /**
 3  * 使用for 循环
 4  * 输入学生的5们功课,查询该学生的总成绩和平均分数
 5  */
 6 import java.util.Scanner;
 7
 8 public class AverageScores {
 9     public static void main(String[] args) {
10         int score;    //声明一个变量,取名为score,用来接收学生的成绩值
11         int sum= 0;    //声明一个变量,取名sum,用来存储学生的成绩和
12         double avg =0.0;    //声明一个double类型的变量,用来接收计算出来的学生的平均分
13         Scanner sc = new Scanner(System.in);    //获取键盘输入
14         System.out.println("请输入学生的姓名:");
15         String name = sc.next();    //将获取的输入赋值给一个String类型的name变量
16         int i= 0;        //声明一个int类型的变量,赋初始值为0
17         for(;i<5;i++){    //循环5次录入成绩
18             System.out.println("请输入5门功课的第"+(i+1)+"门的成绩:");
19             score = sc.nextInt();    //录入成绩
20             sum += score;      //等价于语句 sum=sum+score;
21             System.out.println(name+"的前"+(i+1)+"门功课的成绩和是:"+sum);
22         }
23         System.out.println(name+"的总成绩是:"+sum);
24         avg = sum/5;    //计算平均成绩
25         System.out.println(name+"的平均分是:"+avg);
26
27     }
28
29 }

因为这是Java的基础部分,属于初始java,所以每行代码都给出了注释,为了初学者更能直观的感受,我把其中的英文标识符换做汉字代替。

注意:使用中文尽管在Eclipse中能够正常运行,但在实际开发中,还是推荐使用全英文的命名方式。

 1 package com.student.exam;
 2     /**
 3      * 使用for 循环
 4      * 输入学生的5们功课,查询该学生的总成绩和平均分数
 5      */
 6 import java.util.Scanner;
 7
 8 public class 求学生的平均成绩 {
 9     public static void main(String[] args) {
10         int 单科成绩;
11         int 总成绩= 0;
12         double 平均分 =0;
13         Scanner 键盘输入 = new Scanner(System.in);
14         System.out.println("请输入学生的姓名:");
15         String 学生姓名 = 键盘输入.next();
16         int i= 0;
17         for(;i<5;i++){
18             System.out.println("请输入5门功课的第"+(i+1)+"门的成绩:");
19             单科成绩 = 键盘输入.nextInt();
20             总成绩 += 单科成绩;
21             System.out.println(学生姓名+"的前"+(i+1)+"门功课的成绩和是:"+总成绩);
22         }
23         System.out.println(学生姓名+"的总成绩是:"+总成绩);
24         平均分 = 总成绩/5;
25         System.out.println(学生姓名+"的平均分是:"+平均分);
26
27     }
28
29 }

最后,我们来使用java中的for循环输出点阵的图形

 1 package com.student.exam;
 2
 3 public class PrintTX {
 4     public static void main(String[] args) {
 5         printJX();
 6         printPXSBX();
 7         printSJX();
 8
 9     }
10     //打印矩形
11     private static void printJX(){
12         for(int i=1;i<=5;i++){
13             for(int j=1;j<=5;j++){
14                 System.out.print("*");
15             }
16             System.out.println();
17         }
18     }
19     //打印平行四边形
20     private static void printPXSBX(){
21         for(int i=1;i<=5;i++){
22             for(int k=1;k<=5-i;k++){
23                 System.out.print(" ");
24             }
25             for(int j=1;j<=5;j++){
26                 System.out.print("*");
27             }
28             System.out.println();
29         }
30     }
31     //打印三角形
32     private static void printSJX() {
33         for(int i=1;i<=5;i++){
34             for(int k=1;k<=5-i;k++){
35                 System.out.print(" ");
36             }
37             for(int j=1;j<=2*i-1;j++){
38                 System.out.print("*");
39             }
40             System.out.println();
41         }
42
43     }
44
45 }

结果如下:
*****
*****
*****
*****
*****
    *****
   *****
  *****
 *****
*****

*
      ***
    *****
  *******
*********

----------------

时间: 2024-08-06 22:38:12

java的循环的相关文章

JAVA for循环

java for循环就是,对于某些操作,人为地控制循环次数.最简单的,比如打印数字. 举例: 遍历数组 1 2 3 4 int[] a = new int[]{1,2,3,4,5,6,7,8,9,10,11,12};      for(int iloop : a){      System.out.println(iloop); } 2.while结构循环为当型循环(when type loop),一般用于不知道循环次数的情况.维持循环的是一个条件表达式,条件成立执行循环体,条件不成立退出循环.

java三大循环----第一次小体会

java三大循环包括while...do while...for (1)语法区别: while循环 while(循环条件){ //循环操作(体) } do  while循环 do{ //循环操作(体) }while(循环条件); for循环 for(初始化;循环条件;迭代){ //循环操作(体) } (2)执行顺序: while循环:先判断后执行 do while循环:先执行后判断 for循环:先判断后执行 (3)适用情况: 循环次数确定的情况,通常选用for循环: 循环次数不确定的情况,通常选

[java基础]循环结构1

[java基础]循环结构1 循环结构:for循环,while循环,do_while循环在,增强型for循环 /** 文件路径:G:\JavaByHands\循环语句文件名称:WhileTest.java 编写时间:2016/6/7 作 者:郑晨辉 编写说明:while do while 代码示例 */ public class WhileTest{ public static void main(String[] args){ //初始条件 int i = 0; //进入循环,while循环先判

[Java基础]循环结构3

[Java基础]循环结构3 break 与 continue 中断循环... 1 /** 2 文件路径:G:\JavaByHands\循环语句 3 文件名称:BreakTest.java 4 编写时间:2016/6/12 5 作 者:郑晨辉 6 编写说明:break 结束循环 7 break 是完全跳出循环~~也就是说,遇到break 循环终止~~ 8 */ 9 10 public class BreakTest{ 11 12 public static void main(String[] a

[java基础]循环结构2

[java基础]循环结构2 写了几个循环结构练习~记录一下~~ 1:99乘法表 1 /** 2 文件路径:G:\JavaByHands\循环语句 3 文件名称:GameForFor.java 4 编写时间:2016/6/7 5 作 者:郑晨辉 6 编写说明:for循环示例 代码示例 7 编写一个99乘法表 8 */ 9 public class GameForFor { 10 public static void main(String[] args) { 11 //目标:输出99乘法表 12

Java中循环声明变量方法

Java循环声明变量 之前想这样做,但是网上一直搜索不到,下面是我的方式 项目中 // 得到需要查询外表的数量,然后分别创建缓存,插入数据多的时候如果编码在缓存里面,就不需要再去查询数据库了.key:code/value:pk // 根据"数据来源"有多少非空的 就创建几个,使用 "数据来源字段"+Cache 当cacheMap的key Map<String, Map<String, String>> cacheMap =new HashMa

java对象循环依赖问题

原文地址:http://leihuang.net/2014/11/13/Cycular-Dependency/ 假设我们有一个类A,它包含了一个B的对象,同时类B也包含了一个A对象.那么此时不管你实例化哪一个类,都会出现StackOverflowError错误,这就是java对象循环依赖问题.类似于鸡和蛋的问题. 首先我们看下面这段错误的代码,分析其错误的地方. public class CyclicDependencies { public static void main(String ar

java calendar循环某年某月的所有天数

原文:java calendar循环某年某月的所有天数 代码下载地址:http://www.zuidaima.com/share/1550463248108544.htm 通过java calendar可以获取到某年某月的所有天数,然后循环 标签: 时间 java 循环 某年 某月 天数话题: 语言基础 脚本和工具 java calendar循环某年某月的所有天数

Java 定时循环运行程序

Timer 和 ScheduledExecutorSeruvce 都能执行定时的循环任务,有函数 scheduleAtFixedRate.但是,如果任务运行时间较长,超过了一个周期时长,下一个任务就会被延缓执行. 例如代码: public class ScheduledRunnableTest extends TimerTask { public void run() { try { Thread.sleep(2000); System.out.println(new Timestamp(Sys

JAVA中循环删除list中元素的方法总结

印象中循环删除list中的元素使用for循环的方式是有问题的,但是可以使用增强的for循环,然后今天在使用时发现报错了,然后去科普了一下,再然后发现这是一个误区.下面就来讲一讲..伸手党可直接跳至文末.看总结.. JAVA中循环遍历list有三种方式for循环.增强for循环(也就是常说的foreach循环).iterator遍历. 1.for循环遍历list for(int i=0;i<list.size();i++){ if(list.get(i).equals("del")