Java学习日记14——Lambda表达式以及一些高级语法

Java学习日记14——Lambda表达式以及一些高级语法Java 学习日记 14 Lambda 表达式 表达式 Lambda 表达式的基本写法 Java1 8 以后才有的 参数 gt 结果 例如 Strings gt s length x gt x x gt System out println aaa 在 Java 中的 Lambda 表达式 大体相当于其他语言的匿名函数或者指针函数 然而在 Java 中 则可以认为是匿名类的一个实例 至于匿名类 在前面已经简单陈述过了

Java学习日记14——Lambda表达式(λ表达式)以及一些高级语法

Lambda表达式的基本写法

Java1.8以后才有的。

(参数) -> (结果) //例如: (String s) -> s.length(); x -> x*x; () ->{ 
   System.out.println("aaa");} 

在Java中的Lambda表达式,大体相当于其他语言的匿名函数或者指针函数。然而在Java中,则可以认为是匿名类的一个实例。至于匿名类,在前面已经简单陈述过了。
举一个简单的例子:

Runnable dolt=new Runnable(){ 
    public void run() { 
    System.out.println("普通写法"); } } new Thread(doit).start();//线程 // Runnable doit = () ->{ 
   System.out.println("Lambda 写法");}//只有一句,也可以不写花括号 new Thread(doit).start();//线程 // new Thread(()->{ 
   System.out.println("Lambda+线程 写法");}).start(); 

Lambda表达式大大的简化了书写,可用于线程、数学计算、按钮事件处理等等。由于Lambda只能表示一个函数,所以能写成Lambda的接口要求包含最多只能一个抽象函数。可以将Lambda表达式将代码当成数据来处理。

包装类

Integer i = new Integer(10); 

装箱与拆箱

装箱 : Integer I = 10; 拆箱 : int i = I; 

枚举

枚举是一种特殊的class类型,在简单情况下,用法与其他语言的enum基本一致。

enum Light{ 
   Red,Yellow,Green}; 

可以在enum中添加字段、方法、构造方法等。

注解

@Override//表示覆盖父类方法 @Deprecated//表示过时的方法,会产生警告 @SuppressWarnings//编译不产生警告 

自定义注解:比较复杂比较少用,下面给一个小小例子

public @interface Author{ 
    String name(); } 

引用与指针

相等于不等

Integer i = new Integer(10); Integer j = new Integer(10); System.out.println(i==j); //输出是false,因为这里是两个对象。 Integer m = 10; Integer n = 10; System.out.println(m==n); //输出是true,因为利用了包装,-128~127之间的数有缓存 Integer p = 200; Integer q = 200; System.out.println(p==q); //输出是false,超过缓存区域大小 

执行结果为:

false true false 

String对象的特殊性,判断相等时,不要使用==。而是使用equals。

String hello = "Hello",hel = "Hel",lo = "lo"; System.out.println(hello == ("Hel"+"lo"));//true System.out.println(hello == ("Hel"+lo));//false System.out.println(hello == new String("Hello"));//flase,新的对象String System.out.println(hello == ("Hel"+lo).intern());//true 

如果你对Java有兴趣,可以了解一下前面几期的基础知识!下面附上链接:

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/216032.html原文链接:https://javaforall.net

(0)
上一篇 2026年3月18日 下午12:43
下一篇 2026年3月18日 下午12:43


相关推荐

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号