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();
}
相关推荐
kfyty7251 分钟前
不依赖第三方,不销毁重建,loveqq 框架如何原生实现动态线程池?
java·架构
美团技术团队19 分钟前
LongCat-Flash:如何使用 SGLang 部署美团 Agentic 模型
人工智能·算法
isysc11 小时前
面了一个校招生,竟然说我是老古董
java·后端·面试
道可到5 小时前
Java 反射现代实践速查表(JDK 11+/17+)
java
Fanxt_Ja5 小时前
【LeetCode】算法详解#15 ---环形链表II
数据结构·算法·leetcode·链表
侃侃_天下5 小时前
最终的信号类
开发语言·c++·算法
道可到5 小时前
Java 反射现代实践指南(JDK 11+ / 17+ 适用)
java
茉莉玫瑰花茶5 小时前
算法 --- 字符串
算法
玉衡子5 小时前
九、MySQL配置参数优化总结
java·mysql
叽哥5 小时前
Kotlin学习第 8 课:Kotlin 进阶特性:简化代码与提升效率
android·java·kotlin