编程

java数组详解

2019-09-30  本文已影响0人  歪瑞破费特

产生随机数并逆序输出

随机数  逆序输出 结果

数组排序 :    选择排序、冒泡排序

选择法排序的思路:

1.把第一位和其他所有的进行比较,只要比第一位小的,就换到第一个位置来

比较完后,第一位就是最小的

2.然后再从第二位和剩余的其他所有进行比较,只要比第二位小,就换到第二个位置来

比较完后,第二位就是第二小的

(从小到大)

冒泡法排序的思路:

第一步:从第一位开始,把相邻两位进行比较

如果发现前面的比后面的大,就把大的数据交换在后面,循环比较完毕后,最后一位就是最大的

第二步: 再来一次,只不过不用比较最后一位

增强型for循环更快遍历一个数组

增强型for循环只能用来取值,却不能用来修改数组里的值

增强型for循环 增强遍历找最大值

复制数组

System.arraycopy(src, srcPos, dest, destPos, length)    java中API的使用

src: 源数组、srcPos: 从源数组复制数据的起始位置、dest: 目标数组、destPos: 复制到目标数组的起始位置、length: 复制的长度

要注意下标的越界!!!

api的使用

合并数组

二维数组

实现二维数组的操作

定义一个5X5的二维数组。 然后使用随机数填充该二维数组。找出这个二维数组里,最大的那个值,并打印出其二维坐标 

max 

数组的工具类(好用且常用的类)

Arrays是针对数组的工具类,可以进行 排序,查找,复制填充等功能。 大大提高了开发人员的工作效率。

类中提供的方法

数组复制

与使用System.arraycopy进行数组复制类似的, Arrays提供了一个copyOfRange方法进行数组复制。不同的是System.arraycopy,需要事先准备好目标数组,并分配长度。 copyOfRange 只需要源数组就就可以了通过返回值,就能够得到目标数组了。

说白了就是将数组中复制出来的值赋值给新数组

注意:下标最后一个取不到  

转换为字符串

如果要打印一个数组的内容,就需要通过for循环来挨个遍历,逐一打印但是Arrays提供了一个toString()方法,直接把一个数组,转换为字符串,来遍历查询。 

转字符串:只能转一维数组 排序 搜索 :如果数组中有多个相同的元素,查找结果是不确定的  (查找的是位置) 判断数组是否相同 向数组中填充  相同数据

对二维数组进行排序

参考思路:

1.先把二维数组使用System.arraycopy进行数组复制到一个一维数组

2.然后使用sort进行排序

3.最后再复制回到二维数组。   

步骤 结果

冒泡排序

上一篇下一篇

猜你喜欢

热点阅读