java学习day05-数组高级

java学习第五天内容总结:

学习内容:

关注公众号:java进阶架构师,获取的学习视频

java学习day05-数组高级_第1张图片
学习大纲

总结:

1、方法参数:值传递

    基本类型:值元素

    引用类型:值位置(哈希函数)

2、Java不存在多维数组概念,称为:数组中的数组。

3、foreach:增强for循环,用于数组循环。(语法糖:开发代码更少更简单,功能相同。)编译器新特性

    语法:

        for(数组元素类型 变量:数组名){

            循环体;

        }

4、方法的可变参数(以"..."三点代替数组)(语法糖)

    可变参数必须作为方法的最后一个参数(避免歧义),且一个方法只能有一个可变参数。

5、数组元素拷贝

    JDK中System类中的arraycopy方法。

    若java开发文档中native修饰符修饰,表示本地方法。

    API文档查询:只能搜索类,不能直接搜索类方法。

6、排序算法

    选择:直接选择排序、堆排序

    交换:冒泡排序、快速排序

    插入:直接插入排序、二分法插入排序、shell排序

    归并

模拟描述(顺序:小大)

    冒泡:(相邻位置比较)找到较大值放右边继续相邻比较,直到最大值放在本轮右边末位“大”位置。

    选择:(指定位置比较本轮所有值)找到较小值放左边指定位置,直到最小值在指定“小”位置。

        选择排序提高性能:指定位置A比较本轮其他值B与C,注意:若A>B,则BC比较,BC较小值与A进行值交换。(每轮比较仅一次交换)

    开发中,排序算法自己写的代码性能低,直接使用封装好的排序算法。

7、搜索算法

    线性搜索:(缺点)元素过多时,性能低。

    二分搜索法/二分查找法/折半查找:(缺点)数组元素有序。

8、自行封装数组操作工具ArrayUtil类

    EditPlus文本编辑器Ctrl F11类方法查看

    Java自带数组工具Arrays类,开发中直接使用。

你可能感兴趣的:(java学习day05-数组高级)