【java11】java11新特性之局部变量类型推断升级

局部变量类型推断是java10开始新增的新特性,java11中对局部变量推断进行了升级,var支持添加注解的语法格式,Java10中是无法实现的,在Java11中加入了这样的语法。

Lambda中使用var修饰符

Java11允许在lambda表达式中使用var,它可用于将修饰符应用于局部变量。

package com.morris.java11;import java.util.function.BinaryOperator;/*** Lambda中使用var*/
public class LambdaVarDemo {public static void main(String[] args) {BinaryOperator<Integer> bo = (@Deprecated var value1, @Deprecated var value2) -> value1 + value2;}
}

使用限制

lambda表达式中,注解修饰变量的时候,变量的数据类型必须要写,不能省略,像下面这种写法就是错误的:

Consumer<String>con =(@Deprecated t)->System.out.println(t.toLowerCase()); // 错误语法

这个时候就必须要为小括号中的参数添加数据类型,应该这样写:

Consumer<String>con =(@Deprecated String t)->System.out.println(t.toLowerCase());

java11中,lambda表达式中的参数数据类型可以使用var,但是不能不写:

Consumer<String>con =(@Deprecated var t)->System.out.printin(t.toLowerCase());

var修饰符不能与其他参数混合使用。以下将抛出编译错误:

BinaryOperator<Integer> bo2 = (var value1, value2) -> value1 + value2; // 错误语法

var修饰符不能与其他类型参数混合使用。以下将抛出编译错误:

BinaryOperator<Integer> bo3 = (var value1, Integer value2) -> value1 + value2; // 错误语法

var修饰符只能与括号一起使用。以下将抛出编译错误:

Consumer<Integer> consumer = var value1 -> System.out.println(value1); // 错误语法

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/pingmian/21561.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

大数据的数据采集

大数据采集是指从各种来源收集大量数据的过程&#xff0c;这些数据通常是结构化或非结构化的&#xff0c;并且可能来自不同的平台、设备或应用程序。大数据采集是大数据分析和处理的第一步&#xff0c;对于企业决策、市场分析、产品改进等方面具有重要意义。以下是大数据采集的…

Vue3项目炫酷实战,检测密码强度值

在前端项目开发中&#xff0c;确保用户密码的强度是保护账户安全的重要措施。本文将演示如何使用Vue 3实现一个简单的密码强度检测功能。通过实时反馈&#xff0c;帮助用户创建更安全的密码&#xff0c;从而提升整体系统的安全性。无论您是前端开发新手还是经验丰富的开发者&am…

从GPT-4到GPT-4o:人工智能的进化与革命

从GPT-4到GPT-4o&#xff1a;人工智能的进化与革命 活动介绍 近期&#xff0c;OpenAI推出了最新版本的人工智能模型——GPT-4o&#xff0c;引发了广泛的关注和讨论。在这篇文章中&#xff0c;我们将对GPT-4o进行全面评价&#xff0c;包括与前一版本GPT-4的对比分析&#xff0…

横空出世GPT-4o究竟有什么魅力吸引我们?

目录 如何评价GPT-4o? 方向一&#xff1a;对比分析 GPT-4o是OpenAI最新发布的语言模型&#xff0c;相较于其前身GPT-4&#xff0c;具有以下显著区别和提升&#xff1a; 方向二&#xff1a;技术能力 GPT-4o在语言生成和理解方面展示了卓越的技术能力&#xff1a; 方向三&…

与5月汽车销量共舞:MK米客方德SD NAND助力车载T-box

上周末&#xff0c;各家车企集体公布5月销量数据&#xff0c;新能源车龙头比亚迪单月销量遥遥领先&#xff0c;数据显示&#xff0c;比亚迪5月新能源汽车销量33.18万辆&#xff0c;上年同期销量24.02万辆。1至5月&#xff0c;比亚迪新能源汽车销量累计127.13万辆&#xff0c;同…

重生之 SpringBoot3 入门保姆级学习(17、整合SSM)

重生之 SpringBoot3 入门保姆级学习&#xff08;17、整合SSM&#xff09; 4、数据访问4.1 整合 ssm 4、数据访问 4.1 整合 ssm pom.xml <?xml version"1.0" encoding"UTF-8"?> <project xmlns"http://maven.apache.org/POM/4.0.0" …

指针的认识(指针变量类型意义、指针运算)

目录 一、指针变量类型的意义 a.通过指针的解引用理解类型意义 b.void* 类型指针 c.const修饰的指针变量 c.1 const放在*号左边​编辑 c.2 const放在*号右边 二、指针运算 a.指针-整数 ​编辑 b.指针 - 指针 ​编辑 c.指针的关系运算 一、指针变量类型的意义 指针变…

【Python】pandas的loc使用方法

缘分让我们相遇乱世以外 命运却要我们危难中相爱 也许未来遥远在光年之外 我愿守候未知里为你等待 我没想到为了你我能疯狂到 山崩海啸没有你根本不想逃 我的大脑为了你已经疯狂到 脉搏心跳没有你根本不重要 &#x1f3b5; 邓紫棋《光年之外》 当你处理数…

【学习】软件测试中如何进行Web网页兼容性测试

在数字时代&#xff0c;Web网页作为信息传递和交流的重要平台&#xff0c;其稳定性和用户体验至关重要。如同一位匠人细致打磨他的工艺品&#xff0c;开发者亦需精心测试网页的兼容性&#xff0c;确保其在各种设备和浏览器上的表现无懈可击。今天&#xff0c;我们就来探讨如何对…

SpringBoot+百度地图+Mysql实现中国地图可视化

通过SpringBoot百度地图Mysql实现中国地图可视化 一、申请百度地图的ak值 进入百度开发者平台 编辑以下内容 然后申请成功 二、Springboot写一个接口 确保数据库里有数据 文件目录如下 1、配置application.properties文件 #访问端口号 server.port9090 # 数据库连接信息 spr…

如何高效管理自己的时间,可以从这几个方向着手

如果你是上班族&#xff0c;天选打工人&#xff0c;你的绝大多数时间都属于老板&#xff0c;能够自己支配的时间其实并不多&#xff0c;所以你可能察觉不到时间管理的重要性。 但如果你是自由职业者或者创业者&#xff0c;想要做出点成绩&#xff0c;那你就需要做好时间管理&am…

ImageButton src图片会照成内存泄露吗 会使native内存增加吗?

在Android开发中&#xff0c;ImageButton 是用来显示按钮的视图组件&#xff0c;它通常用于显示图标或图片。对于ImageButton使用的src属性&#xff08;即按钮上的图片&#xff09;通常不会导致内存泄漏&#xff0c;但是有几种情况可能会导致内存问题&#xff1a; 1. **不正确…

NVIDIA发布重磅AI创新,黄仁勋在COMPUTEX大会预示计算未来

每周跟踪AI热点新闻动向和震撼发展 想要探索生成式人工智能的前沿进展吗&#xff1f;订阅我们的简报&#xff0c;深入解析最新的技术突破、实际应用案例和未来的趋势。与全球数同行一同&#xff0c;从行业内部的深度分析和实用指南中受益。不要错过这个机会&#xff0c;成为AI领…

Facebook开户|Facebook广告投放指南

家人们中午好~今天的文章由我们帅气逼人的大帅哥Zoey为大家分享&#xff08;狗头&#xff09;~有想要通过Facebook广告掘金的家人们&#xff01;今天就跟大家分享一下Facebook广告投放的底层逻辑和实用技巧&#xff0c;帮助大家少走弯路&#xff0c;快速入门~ 基础知识&#x…

韶关学院携手泰迪智能科技“见习研学”活动圆满结束

为进一步深化校企合作&#xff0c;落实高校应用型人才培养。5月31日&#xff0c;韶关学院与广东泰迪智能科技股份有限公司联合开展学生企业见习活动。专业教师林思思以及来自韶关学院140名学生参与此次见习活动&#xff0c;泰迪智能科技培训业务部经理钟秋平、校企合作经理吴桂…

easy-es插入大数据报错 Connection is closed

easy-es报错描述 Caused by: java.lang.reflect.InvocationTargetException: nullat sun.reflect.GeneratedMethodAccessor198.invoke(Unknown Source)at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:43)at java.lang.reflect.Metho…

kafka,RocketMq,Pulsar对比

1、陆续地在工作中&#xff0c;用到了这三个消息组件&#xff0c;然而原来用过的慢慢就忘记了

网络编程介绍(二)(端口、通信协议)

端口 标记正在计算机设备上运行的应用程序的&#xff0c;被规定为一个 16 位的二进制&#xff0c;范围是 0~65535 。 分类 周知端口&#xff1a; 0~1023 &#xff0c;被预先定义的知名应用占用&#xff08;如&#xff1a; HTTP 占用 80 &#xff0c; FTP 占用 21 &#xff…

Python正则表达式多行匹配:深入探索与实践

Python正则表达式多行匹配&#xff1a;深入探索与实践 在Python编程中&#xff0c;正则表达式是一种强大的文本处理工具&#xff0c;用于匹配和操作复杂的字符串模式。其中&#xff0c;多行匹配是正则表达式应用中的一个重要场景&#xff0c;它允许我们在跨越多行的文本中查找…

git 基于某个提交号更新代码

场景&#xff1a;版本有严重缺陷&#xff0c;需要进行回退&#xff0c;找不到上一次发布的包&#xff0c;又不想进行回退代码进行发布&#xff0c;可以基于上一次发布版本的提交号进行发布。 git 基于某个提交号更新代码 要基于某个特定的提交&#xff08;commit&#xff09;…