五、数组(高琪java300集+java从入门到精通笔记)

本文主要介绍Java数组相关知识。数组长度固定、元素类型一致,可通过下标引用元素,也是对象。介绍了多维数组、三种初始化方式,还提及操作数组的Arrays类,包含排序、查找等功能。此外,讲解了冒泡排序、二分法等算法,以及数组声明与内存分配和相关函数。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

数组:

  1. 长度固定,不可变

  2. 所有元素的类型一致。

  3. 元素类型可以为任意类型

  4. 通过下标来引用相关元素。下标不能超过length-1(length:1.数组:a.length;容器:a.size();包装类:Integer.SIZE;String:str.length();文件:file.length()?

  5. 数组也是对象(Java中对象是在堆中的,因此数组无论保存原始类型还是其他对象类型,数组对象本身是在堆中存储的)。数组的元素可以看做对象的成员变量。所以,成员变量自动初始化的规则也适用于数组元素。

  6. 多维数组(一般使用容器):数组的元素是数组。a=new int[2][];a[0]=new
    int[2];a[1]=new int[3];

  7. 数组的三种初始化的方式:

    1. 动态初始化:数组定义(声明)与为数组元素分配空间并赋值的操作分开进行。

    2. 静态初始化: 除了用new关键字来产生数组以外(new也是??),还可以直接在定义数组的同时就为数组元素分配空间并赋值。
      int[] a = {2,3,4}

    3. 默认初始化

  8. Arrays类(操作数组的工具类):包含了对数组元素的排序、查找。

  9. 算法:

    1. 冒泡排序

    2. 二分法

声明与内存分配:

1.声明的时候并没有实例化任何对象,只有在实例化数组对象时,JVM才分配空间,这时才与长度有关。

2. 声明一个数组的时候并没有数组真正被创建。

一些函数:

  1. System类里也包含了一个static void arraycopy(object src,int srcpos,object
    dest, int destpos,int
    length)方法,该方法可以将src数组里的元素值赋给dest数组的元素,其中srcpos指定从src数组的第几个元素开始赋值,length参数指定将src数组的多少个元素赋给dest数组的元素。

  2. Arrays类(import java.util.Arrays;):

  3. fill填充替换:用同一个值对数组进行填充。

  4. toString()方法是Arrays类的静态方法,不是前面讲的Object的toString()方法。返回[1,2,3]

  5. sort排序

  6. copyOf/copyOfRange复制

  7. binarySearch查询:二分搜索法

算法!!!!!!!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值