Day28-Java基础之Arrays类和lambda表达式

Arrays类

复制代码
//Arrays类
int[] arr={1,2,3,4,5,6};
System.out.println(Arrays.toString(arr));
System.out.println(Arrays.binarySearch(arr,3));//不存在返回-插入点再-1
int[] newArr=Arrays.copyOf(arr,10);
System.out.println(Arrays.toString(newArr));
int[] newArr2=Arrays.copyOfRange(arr,0,3);//包头不包尾
Arrays.fill(arr,100);
Arrays.sort(arr);
Integer[] integers={1,2,3,2,1,7};
//第二个参数是一个接口
Arrays.sort(integers,new Comparator<Integer>(){//二分加插入排序
    public int compare(Integer o1, Integer o2){
        return o1-o2;//返回负数插在前面,返回正数插在后面,0也是后面
    }
});

lambda表达式

复制代码
//lambda表达式
Arrays.sort(integers,(Integer o1,Integer o2)->{
        return o1-o2;
    }
);
//(形参)->{方法体}
//可以简化匿名内部类的书写,只能简化函数式接口
//调用方法的形参是接口,就要调用这个接口的实现类对象
method(()->{
    System.out.println("在游泳");
});
//形参只有一个小括号可以省略,方法体只有一行大括号可以不写,参数类型可省略
Arrays.sort(integers,(o1,o2)->o1-o2);
复制代码
public static void method(Swim swim){
    swim.swimming();
}
复制代码
interface Swim{
    public abstract void swimming();
}
相关推荐
蒙奇D索大14 小时前
【算法】回溯算法精讲:从深度优先搜索到剪枝优化
经验分享·笔记·算法·深度优先·剪枝·改行学it
QTreeY12314 小时前
yolov5/8/9/10/11/12/13+deep-oc-sort算法的目标跟踪实现
人工智能·算法·yolo·目标检测·计算机视觉·目标跟踪
_OP_CHEN14 小时前
算法基础篇:(六)基础算法之双指针 —— 从暴力到高效的优化艺术
c++·算法·acm·优化算法·双指针·oj题·算法蓝桥杯
cs麦子14 小时前
C语言--详解--指针--下
c语言·数据结构·算法
Han.miracle14 小时前
Java EE --JUC
java·线程池·原子类·callable·semaphore·reentrantlcok
那我掉的头发算什么14 小时前
【javaEE】多线程——线程安全初阶☆☆☆
java·jvm·安全·java-ee·intellij-idea
yzp-14 小时前
Zookeeper 笔记
java·分布式·zookeeper
Tisfy15 小时前
LeetCode 2536.子矩阵元素加 1:二维差分数组
算法·leetcode·矩阵
蜡笔大新79815 小时前
IDEA中的异常
java·ide·intellij-idea
北邮刘老师15 小时前
智能家居,需要的是“主控智能体”而不是“主控节点”
人工智能·算法·机器学习·智能体·智能体互联网