java比较两个list是否相同 equals
Posted 生之须臾亦不负
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java比较两个list是否相同 equals相关的知识,希望对你有一定的参考价值。
比较两个list是否相同,一般我用数组自带的函数equals,如:
public int updateTemplateByVO(ContentTemplateVO contentTemplateVO) throws Exception { int flag = 0; if (null == contentTemplateVO) { return flag; } //比较新编辑的模板参数是否与原有的参数相同 //新的参数数组 List<String> stringList = getParamListFromTemplateContent(contentTemplateVO); //旧的参数数组 List<TContentTemplateParam> tContentTemplateParamList = selectTemplateParamsByTemplateId(contentTemplateVO.getId()); List<String> paramList = new ArrayList<String>();
//将从表里获取的数组重新整理成包含相同类型的list数组 for (TContentTemplateParam contentParam : tContentTemplateParamList) { paramList.add(contentParam.getParamName()); }
//比较两个list Boolean sameSortFlag = stringList.equals(paramList); String content = contentTemplateVO.getSmsMsgContent(); StringBuilder stringBuilder = new StringBuilder(content); //参数有修改则重新排序 if (!sameSortFlag) { String newContent = rightSortForContentParam(contentTemplateVO.getSmsMsgContent()); contentTemplateVO.setSmsMsgContent(newContent); } contentTemplateVO.setUpdateTime(DateUtil.getNowAsDate()); TContentTemplate tContentTemplate = ModelCopyUtil.copy(contentTemplateVO, TContentTemplate.class); flag = tContentTemplateMapper.updateByPrimaryKeySelective(tContentTemplate); if (flag == 1 && (!sameSortFlag)) { //先删除对应模板的参数配置 deleteContentTemplateParam(contentTemplateVO); //重新配置模板参数 addContentTemplateParam(contentTemplateVO); } return flag; }
以上是关于java比较两个list是否相同 equals的主要内容,如果未能解决你的问题,请参考以下文章