zoukankan      html  css  js  c++  java
  • Java数组

    ---------siwuxie095

       

       

       

       

       

    1、数组的定义

       

    数组是有序数据的集合,数组中的每个元素具有相同的数组名和下标来做唯一标识

       

       

       

    2、数组的分类

       

    1)一维数组:最常用

    2)二维数组:较常用

    3)多维数组:很少使用,不好控制和理解

       

       

       

    3、数组的优点

       

    不使用数组定义100个整型变量:int i1,int i2,int i3 … int i100;

       

    使用数组:int i[100]; (伪代码)

       

       

       

    4、数组的声明及内存分配

       

    1)声明形式一:type arrayName[];

    2)声明形式二:type[] arrayName;

       

    为数组分配内存空间,如果不分配内存,将不能访问它的任何元素

       

    使用 new 关键字,来为数组分配内存空间(或称为 实例化)

       

       

    如果没有初始化,则int类型的默认值为 0,String类型的默认值为 空

       

       

       

    5、数组的静态初始化

       

    数组初始化分为两种方式:

    (1)动态初始化

    (2)静态初始化

       

    之前创建的数组,采用的方式都是动态初始化,即所有的内容不会具体指定,都是默认值

       

    如:int score[]=new int[3];

       

    静态初始化是指:在数组创建之初直接指定其内容,没有使用 new 关键字

       

    如:int score[]={2,4,5,8};

       

       

       

    6、数组的使用

       

    如:

       

    package com.siwuxie095.array;

       

    public class ArrayDemo01 {

       

    /**

    * int型数组的最大值、最小值

    */

    public static void main(String[] args) {

    //数组的静态初始化

    int score[]={23,45,65,34,27};

    int max,min;

    max=min=score[0];

    for (int i = 0; i < score.length; i++) {

    if (score[i]>max) {

    max=score[i];

    }

    if (score[i]<min) {

    min=score[i];

    }

    }

    System.out.println("最大值:"+max);

    System.out.println("最小值:"+min);

    }

       

    }

       

    运行一览:

       

       

       

    再如:

       

    package com.siwuxie095.array;

       

    public class ArrayDemo02 {

       

    /**

    * 冒泡排序:

    * 当水烧开时,下方产生的气泡向上浮动时,

    * 气泡会越来越大,最大值在上面(由来)

    */

    public static void main(String[] args) {

    //数组的静态初始化

    int score[]={13,32,77,28,69,45,56};

    //数组长度要减一,7个数字只需要排序6次即可

    //因为只剩下一个数字时就不需要比对了

    for (int i = 0; i < score.length-1; i++) {

    //双层for循环

    for (int j = i+1; j < score.length; j++) {

    if (score[i]<score[j]) {

    int temp=score[i];

    score[i]=score[j];

    score[j]=temp;

    }

    }

     

    System.out.print(""+(i+1)+"次排序:");

    for (int j = 0; j < score.length; j++) {

    System.out.print(score[j]+" ");

    }

    System.out.println();

     

    }

    }

       

    }

       

    运行一览:

       

       

       

       

       

    7、二维数组介绍以及使用

       

    如果把一维数组看成是线性图形,那么二维数组就是一个平面图形

       

    二维数组的声明和一维数组类似,内存分配也是使用 new 关键字

       

    声明与分配内存:

    声明:type arrayName[][];

    初始化:arrayName[][] = new type[行][列];

       

    如:

       

    package com.siwuxie095.array;

       

       

    public class ArrayDemo03 {

       

    public static void main(String[] args) {

    int score[][]=new int[5][5];

    for (int i = 0; i < score.length; i++) {

    for (int j = 0; j < score[i].length; j++) {

    System.out.print(score[i][j]+" ");

    }

    System.out.println();

    }

    }

       

    }

       

    运行一览:

       

       

       

    二维数组静态初始化

    type arrayName[][]={{values},{values},{values}};

       

       

    如:

       

       

    代码:

       

    package com.siwuxie095.array;

       

    public class ArrayDemo04 {

       

    public static void main(String[] args) {

    int score[][]={{100,90},{67,70},{50,78,80}};

    for (int i = 0; i < score.length; i++) {

    for (int j = 0; j < score[i].length; j++) {

    System.out.print(score[i][j]+" ");

    }

    System.out.println();

    }

    }

    }

       

    运行一览:空出的位置在内存空间中也是空的

       

       

       

       

       

    【made by siwuxie095】

  • 相关阅读:
    asp.net中控件的enableviewstate属性 的设置
    一个怎样得到treeView值的小例子
    实现表格边框的样式表
    GridView的精妙使用
    无法向会话状态服务器发出会话状态请求。
    Microsoft Visual Studio 2008 快捷键大全
    我每天学习一句英语今天要学的是
    C语言学习心得
    怎么样把GridView里的数据导出到Excel里
    怎么样在c#程序中放音乐
  • 原文地址:https://www.cnblogs.com/siwuxie095/p/6546042.html
Copyright © 2011-2022 走看看