Java入门篇——数组

前言:本文为我随书学习的笔记文章,只描述怎样做,不描述是什么。

1.一维数组

一维数组的使用分为三步:声明、初始化、访问;

1.1声明

语法格式:数据类型[] 数组名;

or       数据类型 数组名[];

例如:

1 int[] intArray;
2 int intArray[];

备注:Java中声明数组和c++不同的地方是声明数组时不指定数组的长度,所以声明数组时不会为数组各元素分配内存空间,仅在相应的栈内为这个引用变量分配空间。

1.2初始化

静态初始化例子:

1 int[] intArray = {1,2,3,4};  String[] stringArray = {"Hello","World"};

动态初始化例子:

1 int[] intArray = new int[50];  //或者 int intArray[] = new int[50];
2 intArray[0] = 1;        //为数组各元素赋值
3 intArray[1] = 2;

备注:无论是哪种初始化,上面的例子中,栈内存中的引用intArray,即数组名,指向数组的首元素的地址;

   动态初始化会为各元素赋予对应变量类型的默认值,如int类型默认值为0,String类型默认值为Null;

1.3访问

访问方式:数组名[index];  //index为数组下标,可以为整型常数或表达式,从0开始

备注:Java对数组元素进行越界检查以保证安全性,一旦越界将抛出ArrayIndexOutOfBoundsException异常;

   Java中每一个数组都有一个属性length指明它的长度,能有效地判断出数组的长度,使用方式为:数组名.length;

1.4实例 ArrayDemo.java

 1 //该类实现倒叙遍历一维数组功能
 2 public class ArrayDemo
 3 {
 4   public static void main(String[] args)
 5   {
 6     int i;
 7     int[] a = new int[5];
 8     for(i=0; i<5; i++)
 9     {
10       a[i] = i;
11     }
12     for(i=a.length-1; i>=0; i--)          //如果是顺序遍历则为:for(i=0; i<=a.length-1; i++)
13     {
14       System.out.println("a[" + i + "]=" + a[i]);
15     }
16   }
17 }

 

2.多维数组

2.1声明

语法格式:数据类型 数组名[][]; 

or       数据类型[][] 数组名;

例子:

1 int intArray[][];  //或者 int[] [] Array;

2.2初始化

静态初始化例子:

1 int intArray[][] = {{1,2},{2,3},{3,4}};  //初始化了一个3行2列数组intArray

动态初始化例子:

1 int intArray[][] = new int[3][2];
2 intArray[0][0] = 10;  //为第一行第一列赋值
3 intArray[0][1] = 11;

初始化一个二维数组,且各行的列数不相等:

1 String s[][] = new String[2][];  //可以为每一维分配不同空间,但必须从最高维开始,例如执行此语句时,数组s包含s[0]和s[1]
2 s[0] = new String[2];      //分别对s[0]和s[1]分配空间
3 s[1] = new String[3];

2.3访问

语法格式:数组名[index1][index2];  //其中index1和index2为数组下标

备注:与一维数组一样,二位数组也有length属性,但要特别小心,使用“二维数组名.length”方式返回的是该二维数值的行数,使用“二维数组名[index1].length”返回的是该二维数组的

   index1行的元素数(即该行的列数)。 

 

3.数组拓展(为保证文章简洁,采用超链接方式,待编写)

3.1 foreach语句

3.2 java.util.Arrays类

3.3 字符串

3.3 容器

posted @ 2016-10-17 14:47  小白的华丽转身  阅读(98)  评论(0编辑  收藏  举报