JAVA数组概念与C语言数组概念区别

C语言数组概念: 数组是一个集合数据类型,它由多个元素组成,每个元素都有相同的数据类型,占有相同大小的存储单元,且在内存中连续存放。每个数组都有一个名字,数组中的每个元素都有一个序号(都成为下标),表示元素在数组中的位置,数组的维数和大小在定义数组时确定,程序运行时不能改变。

Java中数组的概念: 数组是一个对象的容器,可以持有固定个数的一组具有相同类型的值。Java中要区分数组的声明与定义仅仅定义了一个数组的名字,并没有给该数组分配所需要的存储空间。

通过概念对比得到:

  1. 地位不同,C语言体系中数组是一个基本的数据类型,Java是一个容器。
  2. 内存管理方式不同,C语言中数组在内存中连续存放,数组变量名就是数组的首地址。而Java中数组名不在数组中,仅仅作为管理者,也并没有分配所需要的内存空间。
  3. 实例使用 C语言: int arr1[]={1,2};//编译器帮忙数元素个数 int arr2[5];//声明元素个数但不赋值 int arr3[5]={1,2,3,4,5};//声明且赋值 Java语言: int num=5; int[] arr1=new int[num];//最基本的声明,使用变量 int[] arr2=new int[5];//最基本的声明 int[] arr3=new int[] {5,4,9,73};//不显式的声明数组的容量 int[] arr4={3,2,1,2}; //不用new的方法

重点:数组类的使用 C++中: Student arrayStu[5];

可以直接使用。

Java中: Student[] arrayStu = new Student[5]; for(int i=0;i<5;i++){ arrayStu[i] = new Student(); }

经验分享 程序员 微信小程序 职场和发展