当前课程知识点:“做中学”Java程序设计 > 第4章使用面向对象高级语法 > 4.3使用数组类操作数组 > Video
数组作为一种常用的容器 是我们经常接触的一类对象
Java给这种对象提供了一个专用的工具类
Arrays
它提供了数组对象的一些常用操作
例如 排序
搜索 比较 打印 等等
今天 我们就来一起学习一下
Arrays数组工具的使用
在Arrays工具类当中
所有的方法都是以静态方法的方式出现
其中有一个fill方法
它的作用是用来对数组进行填充
有两个重载版本
第一种形式比较简单
只需要提供一个要填充的数组和指定填充的内容
这样 你就可以为数组填充一个指定的数值
例如 我们可以利用Arrays.fill(a,10)
执行这个方法以后 数组a的所有元素将填充为10
第二种形式的参数就比较多了
我们来一一介绍他们
首先 这里的a是你要填充的数组
fromIndex是要填充的数组起始下标
toIndex是填充结束的数组下表
而val(ue)是你要填充的指定数值
需要注意的是
这里的起始下标是包含在内的
而结束的下标是不包含的
这也就意味着
你可以利用这个方法来给数组的指定区域填充一个指定数值
要打印数组
我通常会使用循环来依次地获取数组当中的每一个元素
这种做法非常常见
但是Arrays提供了一个更简单有效的办法
用于显示我们的数组信息
它的toString工具方法
就可以直接来打印我们的数组信息
用逗号来分隔我们的数组的每一个元素
要想在有序数组当中
查找某个数组元素所属的下标
你可以使用Arrays.binarySearch这个方法
该方法返回一个数组的下标值
你只需要提供一个要找的源数组
和你要查找的关键字
如果要找的数据存在
那么 这个方法就会返回
你要找的数值所在的下标位置
不过 需要注意的是
Arrays.binarySearch方法在使用时是有前提的
它要求数组当中的元素必须是有序的
如何让一个数组成为一个有序数组呢
Arrays提供了一个sort静态方法
这个方法可以对数组进行排序
我们还会经常比较两个数组的内容是否相等
这时候就可以使用Arrays提供的equals方法
来代替传统的循环比较的工作
从而为你节省大量的时间和代码
下面我们来看一个综合的例子吧
首先我们来创建一个数组a
它具有10个元素
然后 我们利用循环
对数组进行初始化
这里 我们使用Arrays.fill
你可以使用Arrays.toString来打印这个数组的当前对象信息
我们利用Arrays.binarySearch对数组当中的6进行查找
现在我们再来一个乱序的数组b
使用Arrays提供的sort方法
我们可以将数组进行排序
排完顺序以后 我们再来看看数组a和数组b
内容是不是一样了
这时候就要用到Arrays.equals方法
程序会告诉你
这两个数组当中的数值是否相等
需要额外补充的是
要判断两个数组的内容是否相等
我们不能直接利用数组的引用变量
来判断相等性
因为用==来表达的相等默认的比较是这两个数组的内存地址
而这个内存地址显然是不相等的
所以我们必须要使用(Arrays.)equals这个方法
好了 今天的内容非常地实用 你学会了吗
-1.1Java简介
--01Java简介
-1.2搭建Java开发环境
--Video
-1.3使用记事本编写Java程序
--Video
-1.4使用Eclipse开发Java程序
--Video
-1.5导入/导出Java项目
--Video
-1.6管理组织代码
--Video
-第1章初始Java--测试题
-2.1认识标识符
--Video
-2.2变量和变量类型
--Video
-2.3数据类型和类型转换
--Video
-2.4使用常量
--Video
-2.5使用注释
--Video
-2.6使用运算符进行算术运算
--Video
-第2章使用Java基本语法(1)--测试题
-2.7使用运算符进行逻辑处理
--Video
-2.8使用if进行流程控制
--Video
-2.9使用switch进行流程控制
-2.10使用循环
--Video
-2.11循环的跳出和继续
--Video
-2.12多重循环
--Video
-第2章使用Java基本语法(2)--测试题
-3.1认识类和对象
--Video
-3.2为类添加属性
--Video
-3.3为类添加方法
--Video
-3.4为类添加静态方法
--Video
-3.5递归方法
--递归方法
-3.6构造方法
--Video
-3.7重载方法
--Video
-第3章使用面向对象基础语法--测试题
-4.1使用继承语法
--Video
-4.2使用数组
--Video
-4.3使用数组类操作数组
--Video
-4.4使用抽象类
--Video
-4.5使用接口
--Video
-第4章使用面向对象高级语法--测试题
-5.1异常处理机制
--Video
-5.2捕获异常
--Video
-5.3创建自定义异常
--Video
-第5章捕获并处理异常--测试题
-6.1SWT图形界面
--Video
-6.2使用SWT布局管理-FillLayout
-6.3使用SWT布局管理-RowLayout
-6.4SWT中的事件模型
--Video
-6.5常见事件处理写法
--Video
-第6章使用SWT设计界面--测试题
-7.1微波炉模拟程序的界面制作
--Video
-7.2微波炉模拟程序的代码重构
--Video
-7.3微波炉模拟程序的事件监听
--Video
-7.4微波炉模拟程序的数字键盘
--Video
-7.6微波炉模拟程序CookTimer
--Video
-7.7微波炉模拟程序添加图像
--Video
-7.8微波炉模拟程序添加声音
--Video
-7.9微波炉模拟程序安装包制作
--Video