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();
}
相关推荐
橘颂TA43 分钟前
【剑斩OFFER】算法的暴力美学——连续数组
c++·算法·leetcode·结构与算法
憧憬blog1 小时前
【Kiro开发集训营】拒绝“屎山”堆积:在 Kiro 中重构“需求-代码”的血缘关系
java·开发语言·kiro
e***74952 小时前
Spring Security 官网文档学习
java·学习·spring
n***i952 小时前
Java NIO文件操作
java·开发语言·nio
星释2 小时前
Rust 练习册 72:多米诺骨牌与回溯算法
开发语言·算法·rust
笃行客从不躺平3 小时前
接口幂等性(Idempotency)
java
Hero | 柒4 小时前
JAVA反射机制
java·spring·反射
j***63084 小时前
Springboot项目中线程池使用整理
java·spring boot·后端
likuolei4 小时前
Eclipse 创建 Java 接口
java·数据库·eclipse
q***54754 小时前
Spring Boot 经典九设计模式全览
java·spring boot·设计模式