永发信息网

java获取list相同的数据

答案:3  悬赏:50  手机版
解决时间 2021-02-13 00:44
  • 提问者网友:风月客
  • 2021-02-12 20:04
我在java用三个list获取到了数据库三张表的数据,只有一个goodsId是共有的,第一个list获取到了总的数据,怎么根据goodsId判断我另外两个list都有这个goodsId,然后打印出来(另外两个list获取数据的表,里面的数据都是根据第一个list获取数据的表中goodsId插入的,所以只会有相同的)
最佳答案
  • 五星知识达人网友:污到你湿
  • 2021-02-12 21:02
可以用LIST集合的方法contains判断一个元素是否在集合的数据中存在。
全部回答
  • 1楼网友:鱼忧
  • 2021-02-12 23:03
首先转成数组,list.asarray() 然後排序(需要重写实体的compareto方法),再相邻数据两两比较 这个目的有点奇怪,你的实现思路感觉不是很对。如果是要得到重复数据,为什麼不用map存呢? 补充: 不相同就删除对象?还是相同就删除对象?
  • 2楼网友:旧脸谱
  • 2021-02-12 21:44
我觉得你这个做法有点太麻烦了,其实用一句SQL不就能处理了么? 不过由于你描述的不是很明确,我姑且认为你想要找到在三个表里面都有的goodsId的数据的信息吗? 假设你的总数据表 A 另外是B C,你只需要执行类似以下的SQL select A.* FROM A WHERe EXISTS(SELECt B.ID FROM B WHERe B.GOODSID =A.GOODSID ) AND EXISTS(SELECt C.ID FROM C WHERe C.GOODSID =A.GOODSID )这样直接就是你要的数据了,为什么还有全部拿出来,然后再去过滤呢?
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯