lombok 的 val 与 var
lombok 的 val 与 var
一. 含义
- val 和 var 是lombok 提供的语法糖,可以进行类型推断的功能.
- 您可以将
val
用作局部变量声明的类型,而不是实际编写的类型.执行操作的时候,将从初始化设定项的表达式推断类型. - 此功能仅适用于局部变量和
foreach
循环,不适用于字段.
二. 使用
public class ValDemo {public static void main(String[] args) {/*最终展示 : aba : bb : c*/listDemo();mapDemo();}private static void listDemo() {val example = new ArrayList<String>();example.add("a");example.add("b");for (val s : example) {System.out.println(s);}}private static void mapDemo() {val example = new HashMap<String, String>();example.put("a", "b");example.put("b", "c");for (val entry : example.entrySet()) {System.out.println(entry.getKey() + " : " + entry.getValue());}}
}
三. val 和 var 区别
var
工作方式与val
完全相同,只是局部变量未标记为final。
四. 配置
- lombok.var.flagUsage= [ warning| error](默认值:未设置). var如果已配置, Lombok 会将任何用法标记为警告或错误。
- lombok.val.flagUsage= [ warning| error](默认值:未设置).val如果已配置, Lombok 会将任何用法标记为警告或错误。
五. 版本变更
- val 是在 lombok 0.10 中引入 , 1.18.22 中将 val 替换为 final var
- var 在 lombok 1.16.12 中最为实验性功能引入.
六. 参考文献
- [1] lombok 官方文档
lombok 的 val 与 var相关推荐
- Lombok之@Val和@Var使用
前言: @Val和@Var在开发过程中几乎不会使用到.但是,为了Lombok系列文章的完整性,还是将它写出来了. 读者可根据兴趣选择性学习. 一. 为什么不用@Val和@Var? 为什么不用@Val和 ...
- 【Lombok】val 和 var的使用 | 像 JavaScript 一样的去声明变量
文章目录 一.简介 1. val 2. var 3. 区别 二.示例比较 1. Lombok 写法 2. Java 标准写法 三.支持的配置项 四.附属说明 参考文献 一.简介 1. val val是 ...
- 在Scala中评估val,var,lazy val和def构造时
发表简短目录 (Post Brief TOC) Introduction介绍 Scala 'val' usageScala" val"用法 How Scala 'val' is E ...
- val和var和Java
val和var和Java object Hello{def main(args :Array[String]){var i = 1val k = i}} jvm代码 public final clas ...
- scala val 与var 区别
一个var和VAL定义在Scala之间的区别是什么? 一之间的区别是什么var和val在Scala中定义和为什么的语言都需要?为什么你会选择val在一个var反之亦然? 1. 正如许multiplay ...
- scala 中的val 、 var 、def
断断续续学习scala也有一段时间了,初期总对val 与var 的理解不太透彻,今天来做做总结. 一般都知道val 表示不可变,var表示可变,比如: val s ="hello" ...
- val和var的区别
美图欣赏: 一.背景 学习过程中,会有很多小的并且容易混淆知识点,因此会把它记录下来. 二.val(value)和var(variable)的区别 基本语法: var|val 变量名 : 变量类型 = ...
- Kotlin中val和var的区别
变量可以很简单地定义成可变(var)和不可变(val)的变量.这个与Java中使用的final很相似.但是不可变在Kotlin(和其它很多现代语言)中是一个很重要的概念. 一个不可变对象意味着它在实例 ...
- Scala变量定义val与var的区别
Scala有两种变量:var和val.val类似与Java种的final变量,一旦初始化了,就不能再被赋值.相反,var可以在生命周期内被多次赋值! 同样的代码,我把val改成var编译就没有问题了;
最新文章
- xdoj 1144 K叉哈弗曼树
- 使用 Trace32 对 FLASH 编程
- 3-3-完全二叉树结点数
- vue异步数据 报错_vue中异步请求数据,异步请求还没完成,文件就执行了就会报错,怎么解决?...
- MPU6050开发 -- 卡尔曼滤波
- boost::local_time模块实现创建各种dst_calc_rule的测试程序
- 1564: Strange Class
- 编写CGI小结(Java)
- Java 8的烹调方式–拼图项目
- 一群人围成一圈从123报数,如果报到3就退出该圈中,直到最后一个人留下来!...
- vb的VSFlexGrid控件
- (连续子序列)唯一的雪花
- Zabbix 监控 MySQL
- mysql syncrelaylog_MySQL 5.7复制延迟之sync_relay_log
- Java面向对象 Main函数 静态的应用 单例设计模式
- python for spss statistics_IBM SPSS Statistics 与用户自定义 Python 模块的集成及分析
- SpringMvc从入门到入魔
- java excel 数组公式_教你如何快速学习Excel数组公式及运用
- 网络安全形势严峻:国内黑灰产业产值达千亿
- Chrome浏览器获取Google搜索结果批量URL