5.1数组(一维部分)

大纲:

定义:数组是具有相同数据类型的一组数据的集合.

分类:一维数组;二维数组;三维数组,多维数组

5.2一维数组:

5.2.1创建一维数组

数组作为对象允许使用new关键字进行内存分配,在使用前,必须定义数组类型所属的类,即声明数组,一般两种格式:

      1,数组元素类型 数组名字[];

      2.数组元素类型[] 数组名字;

注意:   *1,数组元素类型:决定了数组的数据类型,它可以是JAVA中任意的数据类型,包括基本数据类型和非基本数据类型.

          *2,数组的名字:为一个合法的标识符.

          *3,符号"[]":指明该变量是一个数组类型变量,单一个"[]"表示要创建的数组是一维数组.

<例>:

   int arr[];//声明int型数组,数组中的每个元素都是int型数值.

   String []str;//声明String数组,数组中的每个元素都是String型数值

声明后,还不能访问它的任何元素,因为仅仅有了数组名字和类型,还要必须为其分配内存空间,还必须指明数组长度.

格式:    数组名字 =new 数组元素类型[数组元素的个数];

注意:   *1,数组的名字:已声明的数组变量的名称.

          *2,new:对数组分配空间的关键字.

          *3,数组元素的个数:指定数组中变量的个数,即数组的长度.

<例>:

为数组分配内存:  arr=new int[5];

使用new关键字为数组分配内存时,数组中各个元素的初始化值都是0.

创建数组和分配内存不一定要分开执行.

格式: 数组元素类型 数组名[]=new 数组元素类型[数组元素个数];

<例>:

int month[]=new int[12];//指定元素month,数组长度12.

5.2.2初化一维数组

数组可以与数据类型一样进行初始化操作,数组初始化可分别初始化数组中每一个元素,

有两种形式:1:int arr[]=new int[]{1,2,3,4,56};

               2.int arr2[]={23,34,12,3};

数组初化始方式是:把数据类型包括在大括号内,中间用逗号分开数组,系统自动为数组分配一定的空间.

5.2.3遍历一维数组

遍历数组就是获取数组中的每个元素.通常使用for循环实现.

package 基本数据类型;

import java.util.Scanner;

public class 一维数组 {

    public static void main(String[] args) {
        //数组
        int i=0;
        //写法
        int[]s;
        String t[];
        //数组在使用前,一定初始化大小
        int []a=new int[5];//数组初始化,开辟5个新空间,代表数组长度
        //数组的索引:从0开始,01234
        //索引的最大值=数组的长度-1;
        a[0]=0;
        a[1]=1;
        a[2]=2;
        a[3]=3;
        a[4]=4;
        
        System.out.println("a[2]="+a[2]);
        //数组长度属性,返回int型
        int l=a.length;
        System.out.println("a.length="+l);
        //数组集合的建立
        for(int n=0;n<5;n++)
        {
            System.out.print("请给数组a["+n+"]赋值:");
            Scanner number=new Scanner (System.in);
            a[n]=number.nextInt();
            System.out.println("a["+n+"]="+a[n]);
        }
        System.out.println();
        //数组的遍历
        System.out.println();
        for(int n=0;n<a.length;n++)
        {
            System.out.println("a["+n+"]="+a[n]);
        }
          //foreach循环
          //遍历输出a
        for(int q:a)
        {
            System.out.println(q);
        }
        //遍历输入方式
        String[]sa=new String[]{"abc","def","xyz"};
        String[]sa1={"abc","def","ghi","xyz"};
        System.out.println("sa.length="+sa.length);
        System.out.println("sa1.length="+sa1.length);
        
        
        
        
        
    }

}

答案:a[2]=2
a.length=5
请给数组a[0]赋值:1
a[0]=1
请给数组a[1]赋值:2
a[1]=2
请给数组a[2]赋值:3
a[2]=3
请给数组a[3]赋值:4
a[3]=4
请给数组a[4]赋值:5
a[4]=5


a[0]=1
a[1]=2
a[2]=3
a[3]=4
a[4]=5
1
2
3
4
5
sa.length=3
sa1.length=4

 练习:

 1 //练习  输出数组最大数
 2 int []arr=new int[]{8,2,10,11};
 3         int max=arr[0];
 4         for(int i=0;i<arr.length-1;i++)
 5         {
 6             if(max<arr[i+1])
 7             {
 8                 max=arr[i+1];
 9             }
10         }
11         System.out.println("最大数是"+max);
12 
13 
14 答案:最大数是11

 

posted on 2016-02-28 21:18  一全  阅读(233)  评论(0编辑  收藏  举报

导航