java之数组的扩容、数组的覆盖

本文介绍了Java中数组的特性,强调了数组长度不可变,并详细讲解了数组的扩容原理,即通过复制到新的更大容量的数组实现。同时,讨论了数组值的覆盖情况。还探讨了二维数组的定义和使用,以及Java方法的重要性,包括方法的返回值、参数传递和方法重载的概念。此外,提到了递归方法的应用及其可能导致的栈内存溢出问题。
摘要由CSDN通过智能技术生成

java06

数组(容器)—元素类型支持基本数据类型与引用数据类型;–

定义格式–java的内存—(二分查找(前提:有序;缺点:1必须有序、

2、查找的数在前面))排序(冒泡排序、选择排序)

–**----------------------
数组的应用

时间复杂度:核心代码执行的次数

二分查找(n(数组长度)/2`x=1 x = log2n O(log2n))

冒泡、选择((n数组长度)*(n-1)= n`2-n)

Arrays.sort()----O(n*logn)

空间复杂度

在代码执行过程中额外开辟的空间,是对一个算法在运行过程中临时

占用储存空间大小的量度;

二分查找、冒泡、选择---- O(1)

---------------–**---------*
关于扩容–数组定义完成之后长度永远不变;

所谓扩容事实上就是数组的复制,将旧数组内容复制进入更长的

新数组之中;

数组的复制格式:

(原数组,起始下标,新数组,起始下标,原数组长度)

 System.arraycopy(a,0,a1,0,a.length);

数组扩容演示:

public class QWQ{public static void mian(String[]args){

//创建一个数组;

int[] a = {5,6,9,8,7;}

//创建一个新数组,并复制

int [] a1 = new int[a.length*2];

//(原数组,起始下标,新数组,起始下标,原数组长度)

System.arraycopy(a,0,a1,0,a.length);

System.out.println(Arrays.toString(a));

数组值的覆盖:

  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值