美文网首页
Java 数组

Java 数组

作者: 编程喵喵 | 来源:发表于2019-08-18 22:13 被阅读0次
  • Java 中,数组是一种引用类型。
  • Java 中,数组是用来存储固定大小的同类型元素。
  • 数组对象(这里可以看成一个指针)存储在栈中。数组元素存储在堆中。

数组和容器

Java 中,数组是一种效率最高的存储和随机访问对象引用序列的方式。数组的效率要高于容器(如 ArrayList)。
数组可以持有值类型,而容器则不能(这时,就必须用到包装类)。

数组的使用

数组的定义和使用需要通过方括号 []。
Java 语言使用 new 操作符来创建数组。有两种创建数组方式:

  • 指定数组维度
    • 为数组开辟指定大小的数组维度。
    • 如果数组元素是基础数据类型,会将每个元素设为默认值;如果是引用类型,元素值为 null。
  • 不指定数组维度
    • 用花括号中的实际元素初始化数组,数组大小与元素数相同。

数组作为函数的参数
Java 中,数组类型是一种引用类型。
因此,它可以作为引用,被 Java 函数作为函数入参或返回值。

public static void printArray(int[] array) {}
printArray(new int[]{3, 1, 2, 6, 4, 2});

Arrays 类

java.util.Arrays 类能方便地操作数组,它提供的所有方法都是静态的。
具有以下功能:

  • 给数组赋值:通过 fill 方法。
    public static void fill(int[] a, int val)
    将指定的 int 值分配给指定 int 型数组指定范围中的每个元素。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。

  • 对数组排序:通过 sort 方法,按升序。
    public static void sort(Object[] a)
    对指定对象数组根据其元素的自然顺序进行升序排列。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)。

  • 比较数组:通过 equals 方法比较数组中元素值是否相等。
    public static boolean equals(long[] a, long[] a2)
    如果两个指定的 long 型数组彼此相等,则返回 true。如果两个数组包含相同数量的元素,并且两个数组中的所有相应元素对都是相等的,则认为这两个数组是相等的。换句话说,如果两个数组以相同顺序包含相同的元素,则两个数组是相等的。同样的方法适用于所有的其他基本数据类型(Byte,short,Int等)

  • 查找数组元素:通过 binarySearch 方法能对排序好的数组进行二分查找法操作。
    public static int binarySearch(Object[] a, Object key)
    用二分查找算法在给定数组中搜索给定值的对象(Byte,Int,double等)。数组在调用前必须排序好的。如果查找值包含在数组中,则返回搜索键的索引;否则返回 (-(插入点) - 1)。

相关文章

  • 【骚全带你学Java---九、认识java数组】

    java中数组 数组是指一组数据的集合,数组中的每个数据称为元素。在Java中,数组也是Java对象。数组中的元素...

  • JAVA 基本功秘籍

    1. Java数组与内存控制一、Java数组初始化 Java数组是静态的,即当数组被初始化之后,该数组的长度是不可...

  • Java数组

    Java数组 1.声明数组 在java中声明数组有两种形式:数组元素类型名[] 数组名;数组元素类型名 数组名 [...

  • Java知识之数组

    Java数组知识图如下: 数组基本用法 声明数组声明数组语法格式: 初始化数组Java中使用关键字new创建数组对...

  • Java学校-String类/数组

    Java StringBuffer 和 StringBuilder 类 Java 数组 声明数组变量 明白这句话p...

  • 图解Java数组的内存分配

    1. Java数组是静态的 Java是静态语言,所以Java的数组也是静态的,即:数组被初始化后,长度不可变 静态...

  • Kotlin数组

    数组在Kotlin中使用Array类来表示。下面巴拉一下Kotlin数组和Java数组的区别。Java中的数组通常...

  • java 数组

    java数组:相同类型数据的有序集合 (数组元素的数据类型必须相同) 1. java 创建数组变量 数组中已有元素...

  • 面试题总结

    1、Java中能创建Volatile数组吗? 能,Java中可以创建volatile类型数组,不过只是一个指向数组...

  • scala 2.13.1 数组 和Java List互转

    Scala数组 转 Java List List 转 Scala数组

网友评论

      本文标题:Java 数组

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