数组

一、数组

定义:

  • 储存一个元素固定且元素类型相同的有序集;
  • 减少内存中变量搜索的时间;
  • 数组中的第一个元素的索引为0.

数组的意义

  • 同时存储多个同类型的变量和对象

创建数组

  • 声明数组
    数据类型 [ ] 数组名(Java中推荐用这种)

    int [] grade;

  • 创建数组的空间大小

    grade =new int[31];

或者

int [] grade=new int[31];

  • 在内存中开辟了空间,空间大小为:int;
  • 对象在堆中,变量在栈中;
  • 其他内型同样的道理;

数组的长度

int len =数组名.length

可以求出数组的长度;

数组的初始化

   String []str={"张金","金涛","邓敏","戴尚龙","刘翔"};
   System.out.println("该数组的长度:"+str.length);

或者

String [] str=new String []{"张金","金涛","邓敏","戴尚龙","刘翔"};
System.out.println("该数组的长度:"+str.length);

同样是数组的初始化;
求出数组的长度为5;

  • 如果没有规定数组的长度,那么数组的长度为内容的长度;

实例:

import java.util.Scanner;
//五个学生成绩的最大值
public class grade {
    public static void main(String[] args) {
        double max=0;
        int m=0;
        Scanner s=new Scanner(System.in);
        for(int i=0;i<5+m;i++){
            double [] grade=new double[5+m];
            System.out.println("请输入第"+(i+1-m)+"个成绩:");
            double temp=s.nextDouble();
            if(temp<0||temp>100){
                System.out.println("请重新输入该成绩");
                m++;
                continue;
            }
            grade[i]=temp;
            if(grade[i]>max){
                max=grade[i];
            }
        }
        System.out.println("五个学生的最大值为:"+max);
        s.close();
    }
}

二、二维数组

import java.util.Scanner;
//4位同学的Java、sql、html、js成绩的平均值和每门课程的平均值
public class test2 {
    public static void main(String[] args) {
        double [][] grade=new double[5][5];
        double sum1=0;
        double sum2=0;
        String [] str=new String[]{"java","sql","html","js"};
        for(int i=0;i<4;i++){
            for(int j=0;j<4;j++){
                    System.out.print("请输入第"+(i+1)+"位同学的"+str[j]+"成绩");
                Scanner s=new Scanner(System.in);
                grade[i][j]=s.nextDouble();
                sum1+=grade[i][j];
                sum2+=grade[j][i];
            }
            grade[i][4]=sum1/4;
            grade[4][i]=sum2/4;
            sum1=0;
            sum2=0;
        }

        for(int k=0;k<4;k++){
            System.out.println("第"+(k+1)+"位同学的平均成绩"+grade[k][4]);
        }
        for(int n=0;n<4;n++){
            System.out.println(str[n]+"的平均成绩为"+grade[4][n]);
            sum2=0;
        }

    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值