我所遇到的问题:

当我看到Lombok的@EqualsAndHashCode注解可以重写equals和hashcode时,就像自己操作一下。

然后。。。

package domain;import lombok.AllArgsConstructor;
import lombok.Data;@Data
@AllArgsConstructor
public class User {private String name;private int age;
}
import domain.User;public class UserTest {public static void main(String[] args) {User user1 = new User("szt", 18);User user2 = new User("szt", 18);if (user1.equals(user2))System.out.println("相等");elseSystem.out.println("不相等");}
}

竟然相等了!!!

一度怀疑自己对equals的理解

反复验证始终找不到问题所在

查了半天才发现@Data 注解会自动添加@EqualsAndHashCode注解

Lombok 的 @Data 注解可以为 Java 类自动生成 equals() 和 hashCode() 方法!!!

使用 @Data 注解会自动添加以下注解:

@Getter
@Setter
@RequiredArgsConstructor
@ToString
@EqualsAndHashCode

Lombok的@Data注解自动重写equals相关推荐

  1. Lombok通过@Data注解生成get/set方法时,不生成某个字段的get/set方法

    当通过Lombok的@Data注解生成get/set方法时,如果不想生成username的get/set方法时,可以在username字段上加上注解 @Getter(AccessLevel.NONE) ...

  2. Lombok中@Data注解 @ToString注解 @NoArgsConstructo注解 @AllArgsConstructor注解

    1:项目中引入依赖 <dependency><groupId>org.projectlombok</groupId><artifactId>lombok ...

  3. Lombok的@Data生成的hashCode和equals方法坑

    一.场景复现 创建两个lombok的@Data注解的类Pig实例,放进HashMap当key,map里面的数据居然被覆盖了. package com.mk;import lombok.Data; @D ...

  4. IDEA自动重写的equals方法分析

    文章目录 一.创建类和自动重写equals方法 二.分析 一.创建类和自动重写equals方法 随便创建一个类,然后ctrl+insert生成equals方法 class Student {Strin ...

  5. dataobject java_Object类和@Data注解

    特别说明:若是有不对的地方欢迎指正 简要概述: Object类是java中所有类默认继承的一个类.下面介绍一下Object类中的一些重要的方法,面试中也是经常会被问到的.尤其是==和equals的区别 ...

  6. lombok 中的@Data注解

    今天看到有代码中的Dao包中的类文件,写的极其简洁,甚至引起了开发工具InteliJ的报错,然后程序还能稳健地跑起来. 1 2 3 4 5 6 7 8 9 import lombok.Data; @D ...

  7. lombok工具中@Data注解问题

    2019独角兽企业重金招聘Python工程师标准>>> @Data的主要问题,应该是equals()方法,hashCode()方法等的重写问题. 这里,推荐阅读以下,这几篇博客,有助 ...

  8. lombok中的@Data注解与MyBatis的懒加载机制冲突解决

    使用@Data注解与mybatis的懒加载机制实现一对一关系查询时,发现怎么配置都无效,就是一下都查出来了,根本没有懒加载 1.application.yml配置文件配置如下: # mybatis 配 ...

  9. lombok之@NoArgsConstructor、@AllArgsConstructor和@Data注解

    import lombok.Data; import lombok.AllArgsConstructor; import lombok.NoArgsConstructor;@Data @NoArgsC ...

最新文章

  1. leetcode算法题--扁平化多级双向链表★
  2. 【安全牛学习笔记】拒绝服务***工具
  3. linux工具之检测内存泄漏-valgrind
  4. 分布式认证需求-统一认证授权
  5. jvm配置参数,查看大对象直接分配到老年代
  6. Powershell 最大值堆栈实现
  7. 【Java数据结构】二叉排序树
  8. 五、K8s pod相关操作(1)
  9. 信锐nac6100管理口怎么进去_建盏生锈了怎么办?
  10. Mysql用户与权限操作
  11. CNN手写汉字识别参数调整
  12. 东方精工、普莱德商誉“罗生门”,谁在扯谎?
  13. CSS溢出文字使用省略号表示
  14. 在微软工作365天,还你一个我眼中更加真实的微软
  15. 钉钉、企业微信平台发送工资条程序--燕春科技工资条管理系统2.0
  16. Java GUI编写一个简单的抽奖机
  17. 职场经验:游戏测试的主要工作及主要流程
  18. 写给20岁左右的读者朋友
  19. 笔记3:关于VBS整人代码的浅谈
  20. 自己动手写 printf函数

热门文章

  1. 清华考研复试上机——最大序列和
  2. 内存池——第一章 几种常用的内存池技术
  3. 不停留在表面,天搜科技让创新更接地气
  4. revit二次开发2016
  5. 人生启示录效应篇之破窗效应:及时矫正和补救正在发生的问题
  6. Java 求解买卖股票时机含冷冻期
  7. 【华为云技术分享】云图说 | 初识华为云存储容灾服务:为您的云上数据保驾护航
  8. nacos server 安装报错 macOS 10.12.6
  9. 【VulnHub靶场】——BOREDHACKERBLOG: CLOUD AV
  10. pythonmysql数据处理_Python之MySQL数据操作