从0学Java(八)数组

skyyoung
发布于 2023-1-12 14:10
浏览
0收藏

数据可以存放在变量里,每一个变量有一个名字,有一个类型,还有它的生存空间。如果我们需要保存一些相同类型、相似含义、相同生存空间的数据,我们可以用数组来保存这些数据,而不是用很多个独立的变量。


数组是长度固定的数据结构,用来存放指定的类型的数据。一个数组里可以有很多个数据,所有的数据的类型都是相同的。


①创建数组


数组是一种容器(放东西的地方)

特点是:其中所有的元素具有相同的数据类型;一旦创建,不能改变大小

数组中的每个数据叫做元素


写一个程序计算用户输入的数字的平均数,并输出所有大于平均数的数。

必须先记录每一个输入的数字,计算平均数之后,再检查记录下来的每一个数字,与平均数比较,决定是否输出。


如何记录很多数?

int[]numbers=new int[]


写一个程序计算用户输入的数字的平均数,并输出所有大于平均数的数。

public static void main(String[] args) {
    
    Scanner in=new Scanner(System.in);
    int x;
    double sum=0;
    int cnt=0;
    int[]numbers = new int[100];

    x= in.nextInt();
    while(x!=-1)
    {
    numbers[cnt]=x;
    sum += x;
    cnt ++;
    x= in.nextInt();
    }
    if(cnt>0)
    {
    double average = sum/cnt;
    for(int i=0;i<cnt;i++)
    {
      if(numbers[i]>average)
      {
        System.out.println(numbers[i]);
      }
        
    }
    }
    }
}

从0学Java(八)数组-鸿蒙开发者社区

这里面是有安全隐患的:数组容量为100,超出范围则下标越界报错


②数组的元素

每个元素都是一种类型的变量

索引或者下标是从0开始的

从0学Java(八)数组-鸿蒙开发者社区

有效下标:最小的下标是0,最大的下标是数组的元素个数-1;可是编译器不会检查看你是不是有效下标;但是如果运行的时候出现无效的下标,可能会导致程序终止


如果在刚刚那个程序上写入: numbers[101]= 20;编译器不会报错,但运行不了

从0学Java(八)数组-鸿蒙开发者社区

从0学Java(八)数组-鸿蒙开发者社区

③数组变量

<类型>【】<名字>=new<类型>【元素个数】;

int【】grades=new int【100】


写一个程序,输入数量不确定的【0,9】范围内的整数,统计每一种数字出现的次数,输入-1表示结束

Scanner in=new Scanner(System.in);
    int x;
    x =in.nextInt();
    int[]numbers = new int[10];
    
    while(x!=-1)
    {
    if(x>=0 && x<=9)
    {
    }
    numbers[x]++;
    {
    x= in.nextInt();
    }
    for(int i=0;i<numbers.length;i++)
    {
    System.out.println(i+":"+numbers[i]);
      }
        
    }
    }
    
}

从0学Java(八)数组-鸿蒙开发者社区

length:每个数组有一个内部成员length,会告诉你它的元素的数量


文章转载自公众号:Java极客技术

标签
已于2023-1-12 14:10:30修改
收藏
回复
举报
回复
    相关推荐