list中判断一个对象是否存在,在编程时是非常普遍的一种存在。在不用for循环来判断的时候,可以尝试改写对象equals的方法来解决。非常不多说,demo如下:
SysPermissionDto 类
@Setter
@Getter
@ToString
public class SysPermissionDto{
public SysPermissionDto(){};
public SysPermissionDto(String parentId){
this.parentId=parentId;
}
private String guid;
@Override
public boolean equals(Object o){
if(this==o)return true;
if(o ==null || getClass() != o.getClass())return false;
SysPermissionDto sysPermissionDto= (SysPermissionDto) o;
return Objects.equals(guid, sysPermissionDto.guid);
}
}
判断是否存在语句
if (subMenus.contains(permissionDto)) {
existFlag =true;
}
网友评论