<Java>Java数组的声明与初始化
2014-11-30 16:40
465 查看
Java多维数组的初始化方式与C++不同,其数组可以变长以及动态初始化。
1.一维数组
1.1声明
int array1[];
int []array1;
1.2初始化
a.直接初始化
int array1[] = {2,2,3,4};
String array1[]={"hello","world"};
b.动态初始化
int array1[] = new int[3];
array1[0] = 1;
array1[1] = 2;
array1[2] = 3;
String array1[];
String array1 = new String[3];
array1[0] = new String("Hello");
array1[1] = new String("World");
array1[2] = new String("!");
2.二维数组的初始化
2.1声明
int array2[][];
int [][]array2;
这两种只是形式上不同,效果和意义是一样的。
2.2初始化
a.静态初始化
int array2[][] = {{1,2,3},{4,5},{6}};
b.动态初始化
直接分配空间,等长空间
int array2[][] = new int[2][3];
分别为各个维度分配空间,不等长空间
int array2[][];
array2 = new int[2][];//最高维度初始化
array2[0] = new int[2];//可容纳最多2个元素
array2[0][0] = 2;
array2[0][1] = 2;
array2[1] = new int[3]; //可容纳最多3个元素
array2[1][0] = 3;
array2[1][1] = 2;
array2[1][2] = 3;
3.三维数组的初始化
3.1声明
int[][][] array3;
int array3[][][];
3.2初始化
a.静态初始化
int array3[][][] ={{{1},{2,3}},{{4}}}
b.动态初始化
使用循环赋值
int array3 = new int[2][][];//最高维度
for(int i=0;i<array3.length;i++)
{
array3[i] = new int[3][];//次高纬度大小
for(int j =0;j<array3[i].length;j++)
array3[i][j] = new int[5];//最低维度大小
for(int k=0;k<array3[i][j].length;k++)
array3[i][j][k] = k;//每个元素赋值
}
1.一维数组
1.1声明
int array1[];
int []array1;
1.2初始化
a.直接初始化
int array1[] = {2,2,3,4};
String array1[]={"hello","world"};
b.动态初始化
int array1[] = new int[3];
array1[0] = 1;
array1[1] = 2;
array1[2] = 3;
String array1[];
String array1 = new String[3];
array1[0] = new String("Hello");
array1[1] = new String("World");
array1[2] = new String("!");
2.二维数组的初始化
2.1声明
int array2[][];
int [][]array2;
这两种只是形式上不同,效果和意义是一样的。
2.2初始化
a.静态初始化
int array2[][] = {{1,2,3},{4,5},{6}};
b.动态初始化
直接分配空间,等长空间
int array2[][] = new int[2][3];
分别为各个维度分配空间,不等长空间
int array2[][];
array2 = new int[2][];//最高维度初始化
array2[0] = new int[2];//可容纳最多2个元素
array2[0][0] = 2;
array2[0][1] = 2;
array2[1] = new int[3]; //可容纳最多3个元素
array2[1][0] = 3;
array2[1][1] = 2;
array2[1][2] = 3;
3.三维数组的初始化
3.1声明
int[][][] array3;
int array3[][][];
3.2初始化
a.静态初始化
int array3[][][] ={{{1},{2,3}},{{4}}}
b.动态初始化
使用循环赋值
int array3 = new int[2][][];//最高维度
for(int i=0;i<array3.length;i++)
{
array3[i] = new int[3][];//次高纬度大小
for(int j =0;j<array3[i].length;j++)
array3[i][j] = new int[5];//最低维度大小
for(int k=0;k<array3[i][j].length;k++)
array3[i][j][k] = k;//每个元素赋值
}
相关文章推荐
- <Java>函数的参数是数组
- <Java>Java数组的深拷贝与浅拷贝
- <一>java数据结构与算法 数组
- 数组问题之一维最大字段和问题<Java实现>
- 在JavaScript中实现类似Java中List<Map>类型的数组
- 在Java中将数据库查询结果保存为List<Map>类型的JavaScript数组文件
- <杂谈1002>HTML作为GUI前段,Java/NDK作为业务后端开发方式总结
- <转>学习java反编译工具的使用
- <转>java jsp JXL调用模版导出Excel
- <转载>JAVA AES DES MD5 加密字符串
- <转> 模板类 声明和定义 编译 c++
- <%@ taglib prefix="c" uri="http://java.sun.com/jstl/core" %>标签再使用时报错
- <黑马程序员>枚举--(java基础加强1.5新特性)
- java - JNI - 【 java <-> C++ String 的转换 】
- java工具箱---最新更新(关于<a:support />放在某个标签中不可用)
- 数组问题之数组最值问题<Java实现>
- 程序员_Java初级<四>数组、进制转换函数
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>会报错
- <为知更新>java里的throws 和 try-catch 的用法
- <BEA-000386> <Server subsystem failed. Reason: java.lang.AssertionError: java.lang.reflect.Invocatio