数组

数组分为一维数组,二维数组以及更多维的数组,但平时用的较多且较基础的就是一维数组。

数组有以下几个特点:

1.数组是相同类型的集合;(即同一数组中的元素应属于同一类型。)

2.数组中的各元素是有先后顺序的,他们在内存中按照这个先后顺序连续存放在一起。

3.数组元素用整个数组的名字和他自己在数组中的顺序位置来表示。(即a[0]表示名字为a的数组中的第一个元素。)

定义:

使用数组时,要经过三个步骤,一是要声明数组,二是分配空间,最后进行赋值。

前两个步骤:

数据类型[ ] 数组名;//声明一维数组

数组名=new 数据类型[个数];//分配内存给数组

同时也可以将两句合并为一句:

数据类型[ ] 数组名 = new 数据类型[ 个数 ];

之后再对数组进行赋值。

如下图所示:

java一维数组可以储存一维数组吗 java中的一维数组_System

一维数组元素的访问:

当定义了一个数组,并为他分配了空间后就可以引用数组中的元素。想要使用数组中的元素,可以利用数组名和下标来实现。引用方法为:

数组名[下标]

其中,下标可以是整型数或整型表达式,例如a[3+i](i为整数)。需注意的是Java语言数组的下标是从0开始的。

举例:int[ ] x=new int[10];

其中,x[0]表示第一个元素,x[1]表示第二个元素,以此类推x[9]表示的是第10个元素。对于每个数组都有一个属性length指明它的长度,如x.length指出数组x所包含的元素个数。(如上图)。

同时也可以在定义数组的同时就为数组元素分配空间并赋值,这种方法称为数组的初始化。格式如下:

数据类型[ ] 数组名 ={初始值0,初始值1,…,初值n-1};

-------------

在输入时若要控制从键盘上输入n个数并存入一个数组中,则需要先输入一个数字表明该数组中,再依次输入数字存入数组中。

所需代码如下:

import java.util.*;
public class test {
     public static void main(String[] args) {
         Scanner reader=new Scanner(System.in);
         System.out.println("请问要输入几个数");
         int n=reader.nextInt();
         int[] a=new int[n];
         for(int i=0; i<a.length; i++) {
             System.out.println("请输入第"+(i+1)+"个数");
             a[i]=reader.nextInt();
         }
     }
 }

运行结果如下:

java一维数组可以储存一维数组吗 java中的一维数组_java_02

 最后介绍一下foreach语句与数组:

foreach语句是for循环的一种,他不需要下标就可遍历整个数组。

foreach语句只需要元素类型,循环变量的名字,和从中用于检索的数组。语法如下:

for(type element: array){
System.out.println(element);
…
}

其功能为每次从数组array中取出一个元素,自动赋给变量element,用户不需要再去判断是否超出了数组长度,但有一点值得注意,即element的类型必须与数组array中元素的类型相同。

import java.util.*;
public class test {
     public static void main(String[] args) {
         int[] arr={1,2,3,4,5};
         for(int e:arr)
         System.out.println(e);
     }
 }

运行结果为:

java一维数组可以储存一维数组吗 java中的一维数组_数组_03