目录

1.数组的赋值

遍历

2.求最大值

3.向数组中插入元素

4. 增强for循环

5.二重循环

6.countinue和break 

比较break和continue

总结


1.数组的赋值

遍历

依次获取数组的所有元素的方式叫遍历

一次次写太繁琐,数组元素太多的时候重复工作量大,使用循环

问题:

Java 获取循环数组下标 java用循环输入给数组赋值_Java 获取循环数组下标

 处理数组

Java 获取循环数组下标 java用循环输入给数组赋值_Java 获取循环数组下标_02

 所以我们一般使用for循环来遍历数组

案例:

接收并计算5位同学的平均分

分析:

Java 获取循环数组下标 java用循环输入给数组赋值_数组_03

public static void main(String[] args) {

        /**
         *
         * 在编写程序的时候,数组和循环往往一起使用,可以大大简化代码,提高效率
         *通常使用for循环遍历数组或者给数组赋值
         */
        int[] scores = new int[5];//成绩数组
        double sum = 0.0;
        Scanner input = new Scanner(System.in);
        System.out.println("请输入5位学生的成绩");
        for(int i = 0;i<scores.length;i++){
            scores[i]=input.nextInt();
            sum += scores[i];
        }

        //计算并输出平均分
        System.out.println("学员的平均分为" + sum/scores.length);

2.求最大值

Java 获取循环数组下标 java用循环输入给数组赋值_数据结构_04

public static void main(String[] args) {
        int [] scores ={88,54,78,66,90};

        int max= scores[0];
        //判断比较
        for(int i=0;i<scores.length;i++){
            if(scores[i]>max){
                max=scores[i];
            }
        }
        System.out.println("数组的最大值为"+ max);
    }

3.向数组中插入元素

//通过for循环向数组添加元素
        int[] scores = new int[5];
        for (int i = 0; i < 5; i++) {
            scores[i] = 10 + i;
            System.out.println("向数组中添加的元素" + scores[i]);
        }

 4. 增强for循环

用来遍历数组

//增强for循还 遍历数组
        for(int s:scores){
            System.out.println("向数组中添加的元素" + s);
        }

5.二重循环

一个循环体内又包含另一个完整的循环结构

 

Java 获取循环数组下标 java用循环输入给数组赋值_System_05

变化一次,内曾循环变化一遍

案例:

Java 获取循环数组下标 java用循环输入给数组赋值_数据结构_06

package cycle;

import java.util.Scanner;

public class NextingLoopDemo7 {
    public static void main(String[] args) {

        //计算3个班级平均分
        int [] scores = new int[4];//四名学生
        int classNum=3;//班级数量
        double sum= 0.0;//总成绩
        double[] average = new double[classNum];//平均分成绩数组

        //循环输入学生成绩
        Scanner input = new Scanner(System.in);

        //外层循环控制班级数量
        for(int i = 0 ; i < classNum ; i++){
            //初始化成绩为0
            sum = 0.0;
            System.out.println("请输入"+(i+1)+"个班级");

            //内循环控制每个班学生的数量
            for(int j=0;j>scores.length;j++){
                System.out.println("第"+(j+1)+"个学员的成绩");
                scores[j]= input.nextInt();
                sum=sum+scores[j];
            }

            //计算每个班平均分
            average[i] = sum/ scores.length;
            System.out.println("第"+(i+1)+"个班级学员的成绩的平均分是"+average[i]);
        }

    }
}

6.countinue和break 

紧接着上一题:

Java 获取循环数组下标 java用循环输入给数组赋值_Java 获取循环数组下标_07

这时候我们就需要使用到continue

package cycle;

import java.util.Scanner;

public class NextingLoopDemo7 {
    public static void main(String[] args) {

        //计算3个班级平均分
        int [] scores = new int[4];//四名学生
        int classNum=3;//班级数量
        double sum= 0.0;//总成绩
        double[] average = new double[classNum];//平均分成绩数组


        //记录3个班成绩在85分以上的学院个数
        int count = 0;


        //循环输入学生成绩
        Scanner input = new Scanner(System.in);

        //外层循环控制班级数量
        for(int i = 0 ; i < classNum ; i++){
            //初始化成绩为0
            sum = 0.0;
            System.out.println("请输入"+(i+1)+"个班级");

            //内循环控制每个班学生的数量
            for(int j = 0; j < scores.length ; j++){
                System.out.println("第"+(j+1)+"个学员的成绩");
                scores[j]= input.nextInt();
                sum=sum+scores[j];

                //如果分数在85以上,count+1
                if(scores[i] < 85){
                    continue;//退出本次循环
                }
                count++;
            }

            //计算每个班平均分
            average[i] = sum/ scores.length;
            System.out.println("第"+(i+1)+"个班级学员的成绩的平均分是"+average[i]);
        }

        System.out.println("成绩85以上的学生公有"+ count + "人");

    }
}

countinue的作用就是跳出本次循环,继续下次循环。

案例2: 

Java 获取循环数组下标 java用循环输入给数组赋值_i++_08

package cycle;

import java.util.Scanner;

public class NextingLoopDemo8 {
    public static void main(String[] args) {
        int count = 0;//记录一共买几件衣服
        String choice;//顾客是否离开这家店
        Scanner input = new Scanner(System.in);

        for(int i =0;i<5;i++){
            System.out.println("欢迎光临"+(i+1)+"家专卖店");
            for(int j=0;j<3;j++){
                System.out.println("确定要离开吗?");
                choice = input.next();
                if("y".equals(choice)){//y代表是 n代表否
                    break;
                }
                System.out.println("买了一件衣服");
                count++;
            }
            System.out.println("商店结账");
        }
        System.out.println("总共买了"+count +"衣服");
    }
}

 break:直接跳出循环。

比较break和continue

Java 获取循环数组下标 java用循环输入给数组赋值_System_09

 共同点:

只会影响内存循环执行,对外层循环没有影响

总结

Java 获取循环数组下标 java用循环输入给数组赋值_数据结构_10

语法

Java 获取循环数组下标 java用循环输入给数组赋值_i++_11

区别2:执行顺序

while循环:先判断,再执行

do-while循环:先执行,再判断

for循环:先判断,再执行

区别3:

1.循环次数确定的情况,通常选用for循环

2.循环次数不确定的情况,通常选用while或do-while循环。