在项目会遇到这样的需求 如查询某个分类下面的数据,(一个表 里面有多个分类)
1.我这里的解决方案是
先查询所有的数据 然后遍历一次去重 使用的方法就list 中的
然后再拿去重以后的数据在去比对所有的数据 查询出这个分类下的所有数据
代码如下:
List parameters2 =shopStoreService.getXxbProductParameters(x);
List parameters3 = new ArrayList();
System.err.println("所有值:"+parameters2.size());
//去除重复的
for (int i = 0; i < parameters2.size()-1; i++) {
if(!parameters2.get(i).getColor().contains(parameters2.get(i+1).getColor())){
parameters3.add(parameters2.get(i));
}
}
System.err.println("去重后的值:"+parameters3.size());
for (int i = 0; i < parameters3.size(); i++) {
System.err.println("key:"+parameters3.get(i).getColor());
for (int j = 0; j < parameters2.size(); j++) {
if(parameters3.get(i).getColor().contains(parameters2.get(j).getColor())){
System.err.println("value:"+parameters2.get(j).toString());
}
}
}
数据结果
数据库中的数据
其实就是使用
contains去遍历