数组

作者: Kevin_Huang54 | 来源:发表于2019-02-12 16:43 被阅读0次

基本概念

  • 一个数组只能存放一种数据类型
  • 数组必须初始化
  • 数组在初始化时就确定了长度,之后不能再更改
    1、静态初始化:指定值,不指定长度
int[] a = new int[]{1,2,3,4}
//简化写法:
int[] a = {1,2,3,4}

2、动态初始化:只指定长度,系统会自动填充默认值

int[] a = new int[10]
  • 整型,自动填充0
  • 浮点型,自动填充0.0
  • 布尔型,自动填充false
  • 字符型,自动填充\u0000
  • 引用类型,自动填充null

数组的遍历

  • 使用for循环
  • 使用foreach循环
    • foreach得到的循环变量,不要去修改或赋值
    • 那只是一个临时变量,并不是数组元素,对它赋值没有实际意义
  • 通过Arrays.stream(Array array)方法将数组转换为stream,再用foreach遍历:
int[] a = new int[10];
Arrays.stream(a).forEach(i -> System.out.println(i));

数组的储存方式

  • 数组是一个对象,对象都储存在堆内存中(heap)

    • 所有new的对象都会放在堆内存中
    • 不会随方法结束而销毁,以便反复利用
    • 满足一定条件后,会被GC回收
    • 直接将引用变量赋值为null,可以加快回收速度
  • 定义在局部变量中的引用对象储存在栈内存中(stack)

    • 初始化后,引用对象指向堆内存中的数组对象
    • 当一个方法执行时,内部定义的所有变量都会放入栈内存
    • 方法结束后自然销毁
  • 基本类型数组的储存示意图

    • 赋值后直接把基本类型数据填入数组中


      基本类型数组的储存
  • 引用类型数组的储存示意图

    • 先在堆内存中新建要插入的对象
    • 数组元素是引用类型,赋值后指向对象


      引用类型数组的储存
    • 如果通过lee和zhang修改了对应对象的内容,打印数组元素显示的内容也会变化,因为两者指向堆内存中的同一个对象
  • Arrays工具类常用方法

    • int binarySearch(数组引用, key)——使用二分法查询一个key的索引,数组需要排序才能获得正确结果
    • type[] copyOf(数组引用,length)——复制数组,创建一个新数组(也仅仅是创建引用,而不是新对象),根据length不同,新数组是前length位元素,或者超出后自动填充
    • type[] copyOf(数组引用,int from, int to)——复制数组,索引从from到to
    • boolean equals(数组引用1, 数组引用2),判断两者的数组元素是否相等,全部相等则返回true
    • void fill(数组引用,内容), 设置所有数组元素
    • String toString(数组引用),将数组转换为String,中间用逗号连接,两边用[]

相关文章

  • 数组

    数组数组数组数组数组数组数组数组数组

  • JavaScript - 5.数组<增删改查>

    数组 Array 数组 - 增 数组 - 删 / 改 数组 - 查 数组 - 自动 toString() 数组 -...

  • PHP数组使用

    数组定义 数组增、删、改 数组查询 数组排序 数组合并、分割 数组比较、去重复 数组长度 数组遍历 数组转换 其他...

  • 》》》PHP初入---(三)

    数组定义 1.索引数组:数组下标是整型的 声明数组: 访问数组: count(数组)--获取数组长度 查看数组所有...

  • JavaScript中数组的常用操作

    数组的遍历 数组的映射 数组的简化 数组的连接 获取数组的片段 数组的拷贝 查找数组 数组去重

  • JavaSE之数组

    六、数组 目录:数组概述、数组声明创建、数组使用、多维数组、Array类、稀疏数组 1.什么是数组 数组的定义:数...

  • Shell数组、关联数组

    数组 定义数组 获取数组 关联数组 定义关联数组 获取关联数组

  • 学习Java第五天

    数组是多个数据的集合 数组的语法 数组元素类型【】 数组名; 多维数组: 数组元素类型【】【】 数组名; 多维数组...

  • php基础精粹

    PHP php数组 php数组之索引数组初始化 PHP数组之索引数组赋值 PHP数组之访问索引数组内容 PHP数组...

  • C语言的惯用集

    数组部分 数组部分 清空数组a 把数据读进数组a 对数组a求和

网友评论

      本文标题:数组

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