您的位置:首页 > 汽车 > 新车 > 定制家具价格_网络规划与设计的目的_青岛网站建设优化_手机端百度收录入口

定制家具价格_网络规划与设计的目的_青岛网站建设优化_手机端百度收录入口

2025/3/15 21:24:47 来源:https://blog.csdn.net/2301_80071187/article/details/146125722  浏览:    关键词:定制家具价格_网络规划与设计的目的_青岛网站建设优化_手机端百度收录入口
定制家具价格_网络规划与设计的目的_青岛网站建设优化_手机端百度收录入口

在这里插入图片描述
(以下内容全部来自上述课程)

1.Arrays

操作数组的工具类。
请添加图片描述
细节:

  • copyOf:新长度<老长度----部分拷贝,新长度=老长度----完全拷贝,新长度>老长度----会补上默认初始值
  • copyOfRange:包头不包尾,包左不包右
  • sort1:给基本数据类型进升序排列
    底层原理:快速排序
  • sort2:给引用数组类型进行排序,基本需变包装类
    底层原理:插入排序+二分查找

2.Lambda表达式

简化代码
请添加图片描述

1.函数式编程

一种思想特点。
忽略面向对象的复杂语法,强调做什么,而不是谁去做。
Lambda表达式就是函数思想的体现。
请添加图片描述

2.标准格式

Lambda表达式是JDK8开始后的一种新语法形式。

()->{}

  • ()对应着方法的形参
  • ->固定格式
  • {}对应着方法的方法体

注意点:

  • Lambda表达式可以用来简化匿名内部类的书写。
  • Lambda表达式只能简化函数式接口的匿名内部类的写法。
  • 函数式接口:
    有且仅有一个抽象方法的接口叫做函数式接口,接口上方可以加@FunctionalInterface注解。
package Lambda;public class LambdaDemo1 {public static void main(String[] args) {//1.利用匿名内部类的形式去调用下面的方法//调用一个方法的时候,如果方法的形参是一个接口,那么我们传递这个接口的实现类对象//如果实现类对象只要用到一次,就可以使用匿名内部类的形式书写method(new Swim(){@Overridepublic void swimming() {System.out.println("我在游泳");}});//2.利用Lambda表达式的形式去调用下面的方法//Lambda表达式的格式://(参数列表) -> {方法体}//如果方法的形参列表只有一个参数,那么小括号可以省略//如果方法的方法体只有一行代码,那么大括号可以省略//如果方法的方法体只有一行代码,并且这行代码是一个输出语句,那么大括号和输出语句都可以省略method(()->{System.out.println("我在游泳");});}public static void method(Swim s){s.swimming();}
}
interface Swim{
public abstract void swimming();}

3.省略写法

核心:可推导可省略。

省略规则:

  1. 参数类型可以不写
  2. 如果只有一个参数,参数类型可以省略,同时()也可以省略
  3. 如果lambda表达式的方法体只有一行,大括号,分号,return可以省略不写,需要同时省略。
package Lambda;import java.util.Arrays;
import java.util.Comparator;public class LambdaDemo2 {public static void main(String[] args) {Integer[] arr = {2,3,1,5,6,7,4,8,9};// 匿名内部类的形式Arrays.sort(arr,new Comparator<Integer>(){@Overridepublic int compare(Integer o1, Integer o2) {return o1 - o2;}});// Lambda完整格式// (参数列表) -> {方法体}Arrays.sort(arr,(Integer o1,Integer o2)->{return o1 - o2;});// Lambda简化格式// 如果方法的形参列表只有一个参数,那么小括号可以省略// 如果方法的方法体只有一行代码,那么大括号可以省略// 如果方法的方法体只有一行代码,并且这行代码是一个输出语句,那么大括号和输出语句都可以省略Arrays.sort(arr,(o1,o2)->o1 - o2);System.out.println(Arrays.toString(arr));}
}

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com