Java和C两种编程语言中都有数组的概念,但在使用上有些许不同,下面对两者进行比较和归纳。
Java中的数组
//Java中声明和初始化数组的方式 int[] arr1 = {1, 2, 3}; int[] arr2 = new int[3]; int[] arr3 = new int[]{1, 2, 3}; //Java中遍历数组的方式 for (int i = 0; i < arr1.length; i++) { System.out.println(arr1[i]); }
在Java中,声明和初始化数组的方式有三种,分别是:
- 直接将元素用逗号分隔放到大括号中(静态初始化)
- 先声明数组,然后再为数组分配内存空间和定义初始值(动态初始化)
- 同时定义数组元素和数组(匿名数组)
在Java中,使用for循环遍历数组的语法比较简单直观。
C中的数组
//C中声明和初始化数组的方式 int arr1[3] = {1, 2, 3}; int arr2[3] = {1}; int arr3[] = {1, 2, 3}; //C中遍历数组的方式 int i; for (i = 0; i < 3; i++) { printf("%d", arr1[i]); }
在C中,声明和初始化数组的方式也有三种,不同的是:
- 一种是指定数组大小和元素的值
- 一种是只指定部分元素的值,其余元素默认为0
- 一种是只指定元素的值,而数组大小自行计算
在C中,使用for循环遍历数组需要注意,循环的次数需要手动计算,可能容易出现数组越界的问题。