Java 数组

Java 数组

一维数组

几个概念

数组

一种数据结构,用来存储元素个数固定元素类型相同有序集

基本知识

  • 声明数组
    指定数组的元素类型,并不在内存中给数组分配任何空间,只是创建一个对数组的引用的存储位置,语法:
    elementType[] arrayRefVar;
    (一个数组变量存储的是指向数组的引用)

  • 创建数组 new操作符 语法:
    arrayRefVar = new elementType[arraySize];

    • 使用new elementType[arraySize]创建了一个数组
    • 把这个创建的数组的应用赋值给变量arrayRefVar
  • 数组的大小跟默认值

    • 当给数组分配空间时(new操作符),必须通过指定该数组能够存储的元素个数来确定数组大小。
    • 当创建数组后,它的元素被赋予默认值。
  • 数组初始化语法 {}
    elementType[] arrayRefVar = {value0, value1, value2, …, valuek}

数组的复制

可以使用赋值语句(=)复制基本数据类型的变量,但不能复制数组。将一个数组变量赋值给另一个数组变量,实际上是将一个数组的引用赋值给另一个变量,这两个变量都指向相同的内存地址。

复制数组的三个方法:
- 使用循环语句诸葛地赋值数组的元素
- 使用System类中的静态方法arraycopy
没有给目标数组分配内存空间,复制前必须创建目标数组以及分配给它的内存空间。复制完成后,源数组跟目标数组具有相同的内容,但占有独立的内存空间。
- 使用clone方法复制数组

给方法传递数组

  • 对于基本数据类型参数,传递的是实参的值。
  • 对于数组类型参数,参数值是数组的引用,给方法传递的是这个引用。
  • 基本类型
    byte,short,int,long,char,float,double,Boolean,returnAddress
  • 应用类型
    类类型,接口类型和数组

Arrays类的几个静态方法

  • java.util.Arrays.sort(array);
  • java.util.Arrays.binarySearch(array);
  • java.util.Arrays.equals(array);
  • java.util.Arrays.fill(array);
  • java.util.Arrays.sort(array);

JVM栈跟堆

  • 栈是运行时的单位
    在Java中一个线程就会相应有一个线程JVM栈与之对应。JVM栈因为是运行单位,因此里面存储的信息都是跟当前线程(或程序)相关信息的。包括局部变量、程序运行状态、方法返回值等等。
  • 堆是存储的单位
    JVM堆则是所有线程共享的,只负责存储对象信息。

多维数组

声明语法:
数据类型[ ][ ] 数组名;
使用语法new int[ ][ ]创建数组时,必须指定第一个下标。语法new int[ ][ ]是错误的。

锯齿数组:
各行的长度不一样的二维数组。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值