美文网首页
Java基础之数组

Java基础之数组

作者: 泡泡之意境 | 来源:发表于2019-08-09 22:17 被阅读0次

数组是什么:
数组是一种数据结构,用来存储同一数据类型的集合。通过一个整型下标可以访问数组中的每一个值。
声明格式:数据类型[] 数据变量名称,例如:int[] a或者int a[];
一维数组:
动态初始化:

   private void invoke(){
        int[] array1=new int[3];
        System.out.println("length====="+array1.length);
        array1[0]=1;
        array1[1]=2;
        array1[2]=3;
    }
 System.out: array1.length=====3

静态初始化:

public void invoke(){
        int[] array2=new int[]{1,2,2,4,3};
        System.out.println("array1.length====="+array2.length);
        for (int i = 0; i < array2.length; i++) {
            System.out.println("array2["+i+"]===="+array2[I]);
        }
System.out: array1.length=====5
System.out: array2[0]====1
System.out: array2[1]====2
System.out: array2[2]====2
System.out: array2[3]====4
System.out: array2[4]====3

匿名数组初始化:

 public void invoke(){
        System.out.println("======="+new int[]{1,3,4}.length);
}

如果数组为空或者访问超出数组的长度会报异常:

  public void invoke(){
        int[] array3=null;
        System.out.println("array==="+array3.length);//空指针异常
    }
Caused by: java.lang.NullPointerException: Attempt to get length of null array
     public void invoke(){
        int[] array1=new int[3];
        System.out.println("array1.length====="+array1.length);
        array1[0]=1;
        array1[1]=2;
        array1[2]=3;
        System.out.println("array==="+array1[3]);//数组越界
}
 Caused by: java.lang.ArrayIndexOutOfBoundsException: length=3; index=3

多维数组:多维数组将使用多个下标访问数组元素,它适用于表示表格或更加复杂的排列形式。动态初始化和静态初始化同一维数组。

  public void invoke(){
        //二维数组
        int[][] array=new int[][]{{1,3},{3,4,2}};
        //打印数组内容
        for (int i = 0; i < array.length; i++) {
            for (int j = 0; j < array[i].length; j++) {
                System.out.println("==="+array[i][j]);
            }
        }
    }
System.out: ===1
System.out: ===3
System.out: ===3
System.out: ===4
System.out: ===2

数组排序:可以使用Arrays类中的sort方法进行排序,这个方法采用了优化的快速排序算法对数组进行了排序。

  public void invoke(){
        int[] array1=new int[4];
        array1[0]=1;
        array1[1]=4;
        array1[2]=3;
        array1[3]=2;

        for (int i = 0; i < array1.length; i++) {
            System.out.println("sort前==="+array1[I]);
        }
        Arrays.sort(array1);
        for (int i = 0; i < array1.length; i++) {
            System.out.println("sort后==="+array1[I]);
        }
}
System.out: sort前===1
System.out: sort前===4
System.out: sort前===3
System.out: sort前===2

System.out: sort后===1
System.out: sort后===2
System.out: sort后===3
System.out: sort后===4

总结:此篇记录巩固下Java 基础数组相关的内容,哪里有问题或者有关于数组相关的问题,欢迎大家指出和在评论区评论,可以一起讨论解决,一起成长进步。

相关文章

  • Java基础之数组

    (1)数组:存储同一种数据类型的多个元素的容器(注意和集合的区别 后面的总结之中有)。 (2)特点:每一个元素都有...

  • Java基础之数组

    数组是什么:数组是一种数据结构,用来存储同一数据类型的集合。通过一个整型下标可以访问数组中的每一个值。声明格式:数...

  • Java基础之数组

  • 面试题汇总

    1.Java基础面试问题 Java基础之基础问题 Java基础之面向对象 Java基础之数据结构 Java基础之I...

  • ##Java学习笔记之基础类库笔记

    Java学习笔记之基础类库笔记 Object 所有类,数组,枚举类的父类 Objects(Java7新增) 工具类...

  • Java集合源码分析系列文章

    有个不错的Java集合系列的文章,mark一下,基础知识得时不时温习。 Java集合源码分析之基础(一):数组与链...

  • java基础之数组-------补java基础概念

    数组是什么 数组本身是个抽象的概念,字母理解,可以理解位一组数字的集合。这当然是狭义的理解,在java中数组的概念...

  • Java基础学习之数组

    数组:指的是一组相关变量的集合 声明: 数据类型 数组名称[] = new 数据类型[长度]{} 数据类型 []数...

  • Java基础之方法、数组

    此为个人学习笔记,如有错误,欢迎指教 八、函数 概述: 格式: 说明: 理解:参数类型与参数名,有点像声明1个变量...

  • Java基础之数组(二)

    一、方法参数的值传递机制 传递的过程是方法被调用时,方法里的参数是以值传递的方式传递的 就是将实际参数的副本传入方...

网友评论

      本文标题:Java基础之数组

      本文链接:https://www.haomeiwen.com/subject/dhekjctx.html