这里的初始化分为一维数组初始化和二维数组初始化两种分别介绍
1、一维数组初始化
1.1、C++中的四种初始化方式
方式1:数据类型 数组名[长度]
#include <iostream>
using namespace std;int main() {//定义int arr[2];//初始化arr[0] = 1;arr[1] = 2;for (int i = 0; i < 2; i++){cout << arr[i] << " ";}system("pause");return 0;
}
方式2:数据类型 数组名[长度]={值1,值2,....}
#include <iostream>
using namespace std;int main() {//定义和初始化一起int arr[2] = { 1,2 };for (int i = 0; i < 2; i++){cout << arr[i] << " ";}system("pause");return 0;
}
方式3:数据类型 数组名[]={值1,值2,....}
#include <iostream>
using namespace std;int main() {//定义和初始化一起int arr[] = { 1,2 };for (int i = 0; i < 2; i++){cout << arr[i] << " ";}system("pause");return 0;
}
方式4指针方式:数据类型 * 数组名=new int[长度]
#include <iostream>
using namespace std;int main() {//定义和初始化一起int* arr = new int[2];arr[0] = 1;arr[1] = 2;for (int i = 0; i < 2; i++){cout << arr[i] << " ";}delete[]arr;//释放内存system("pause");return 0;
}
1.2、java的初始化方式
方式1:数据类型 数组名[]= new int[长度]
public class test1 {public static void main(String[] args) {//定义数组int arr[] =new int[2];arr[0]=1;arr[1]=2;System.out.println(arr[0]);}
}
方式2:数据类型 数组名[]= new int[]{值1,值2,......}
public class test1 {public static void main(String[] args) {//定义并初始化数组int arr[] =new int[]{1,2};System.out.println(arr[0]);}
}
方式3:数据类型 数组名[]= {值1,值2,......}
public class test1 {public static void main(String[] args) {//定义并初始化数组int arr[] ={1,2};System.out.println(arr[0]);}
}
2、二维数组初始化
2.1、C++中二维数组初始化方式
方式1:数据类型 数组名 [ ][ ];
#include <iostream>
using namespace std;int main() {//定义int arr[2][2];//初始化arr[0][0] = 1;arr[0][1] = 2;arr[1][1] = 3;arr[1][0] = 4;system("pause");return 0;
}
方式2:数据类型 数组名[长度1 ][ 长度2]={{值1,值2},{值3}}
#include <iostream>
using namespace std;int main() {//定义和初始化int arr[2][2] = { {1,2},{3} };//这里arr[1][1]被初始化为0cout << arr[1][1]<<endl;system("pause");return 0;
}
方式3指针方式:数据类型 **数组名=new int*[长度1]
#include <iostream>
using namespace std;int main() {// 假设我们要创建一个3x4的二维数组 int rows = 3;int cols = 4;// 动态分配内存给二维数组 int** arr = new int* [rows]; // 创建指针数组,也就是3个指针,每个指针将指向一个一维数组 for (int i = 0; i < rows; ++i) {arr[i] = new int[cols]; // 为每个指针分配内存,创建一维数组 }// 初始化二维数组 for (int i = 0; i < rows; ++i) {for (int j = 0; j < cols; ++j) {arr[i][j] = i * cols + j; // 赋值 }}// 打印二维数组 for (int i = 0; i < rows; ++i) {for (int j = 0; j < cols; ++j) {cout << arr[i][j] << " ";}cout << endl;}// 释放内存 for (int i = 0; i < rows; ++i) {delete[] arr[i]; // 释放每个一维数组的内存 }delete[] arr; // 释放指针数组的内存 system("pause");return 0;
}
2.2、Java中二维数组初始化的方式
方式1:数据类型 [ ][ ] 数组名 =new int [长度1][长度2]
public class test1 {public static void main(String[] args) {//定义数组int arr[][] =new int[2][2];//初始化arr[0][0]=1;arr[0][1]=2;System.out.println(arr[0][0]);}
}
方式2: 数据类型 [ ][ ] 数组名 =new int [长度1][ ]
public class test1 {public static void main(String[] args) {//定义数组int arr[][] =new int[2][];//初始化arr[0] = new int[]{1,2};arr[1]= new int[]{6,7,8};System.out.println(arr[0][1]);}
}
这种方式相比第一种更灵活,第二个维度长度不一定非得一样,也就是可以存在第一行2个元素,第二行3个元素
方式3:数据类型[ ][ ] 数组名={{值1,值2,值3},{值4,值5}}
public class test1 {public static void main(String[] args) {//定义数组并初始化int arr[][] = {{1,2},{7,8,9}};System.out.println(arr[0][1]);}
}